Source: https://aiprimetech.io/es/docs/sdks/python/ [Inicio](/es/) / [Documentación](/es/docs/) / Python # Python Ejemplos funcionales con los paquetes anthropic y openai, incluidos streaming y operaciones asíncronas. Copiar página [ Ver como Markdown](/es/docs/sdks/python.md) [ Preguntar a ChatGPT](https://chatgpt.com/?q=Read%20https%3A//aiprimetech.io/docs/sdks/python.md%20and%20answer%20questions%20about%20it.%20Start%20with%20a%20short%20summary.) [ Preguntar en Claude](https://claude.ai/new?q=Read%20https%3A//aiprimetech.io/docs/sdks/python.md%20and%20answer%20questions%20about%20it.%20Start%20with%20a%20short%20summary.) ## SDK de Anthropic ``` Copypip install anthropic ``` ``` Copyimport os from anthropic import Anthropic client = Anthropic( api_key=os.environ[class="s">"CLAUDEAPIKEY"], base_url=class="s">"https://aiprimetech.io", class=class="s">"c"># no /v1 ) msg = client.messages.create( model=class="s">"claude-sonnet-4-6", max_tokens=1024, system=class="s">"You are a concise assistant.", messages=[{class="s">"role": class="s">"user", class="s">"content": class="s">"Explain HTTP caching in three sentences."}], ) print(msg.content[0].text) print(msg.usage.input_tokens, msg.usage.output_tokens) ``` ## Transmisión en tiempo real ``` Copywith client.messages.stream( model=class="s">"claude-sonnet-4-6", max_tokens=1024, messages=[{class="s">"role": class="s">"user", class="s">"content": class="s">"Write a haiku about latency."}], ) as stream: for text in stream.text_stream: print(text, end=class="s">"", flush=True) final = stream.get_final_message() print(class="s">"\n", final.usage.output_tokens, class="s">"output tokens") ``` ## Asíncrono ``` Copyimport asyncio from anthropic import AsyncAnthropic client = AsyncAnthropic(api_key=class="s">"sk-your-key", base_url=class="s">"https://aiprimetech.io") async def ask(q): m = await client.messages.create( model=class="s">"claude-haiku-4-5", max_tokens=256, messages=[{class="s">"role": class="s">"user", class="s">"content": q}], ) return m.content[0].text async def main(): sem = asyncio.Semaphore(8) class=class="s">"c"># respect rate limits async def guarded(q): async with sem: return await ask(q) print(await asyncio.gather(*(guarded(q) for q in [class="s">"1+1?", class="s">"2+2?", class="s">"3+3?"]))) asyncio.run(main()) ``` ## SDK de OpenAI ``` Copyfrom openai import OpenAI client = OpenAI(api_key=class="s">"sk-your-key", base_url=class="s">"https://aiprimetech.io/v1") class=class="s">"c"># with /v1 resp = client.chat.completions.create( model=class="s">"claude-sonnet-4-6", messages=[{class="s">"role": class="s">"user", class="s">"content": class="s">"Hello"}], ) print(resp.choices[0].message.content) ``` Ambos fragmentos llaman al mismo modelo al mismo precio. Utiliza la biblioteca de la que ya dependa tu proyecto. [API de mensajesReferencia de campos](/es/docs/api-reference/messages/)[Transmisión en tiempo realEstructuras de los eventos](/es/docs/api-reference/streaming/)[Buenas prácticasTiempos de espera y reintentos](/es/docs/guides/best-practices/) [AnteriorDescripción general de los SDK](/es/docs/sdks/)[SiguienteTypeScript](/es/docs/sdks/typescript/)