A API OpenAI fornece a capacidade de transmitir respostas de volta para um cliente, a fim de permitir resultados parciais para determinadas solicitações. Para conseguir isso, seguimos o padrão de eventos enviados pelo servidor. Nossas bibliotecas oficiais de Node e Python incluem auxiliares para tornar a análise desses eventos mais simples.Em Python, uma solicitação de streaming se parece com:from openai import OpenAI
client = OpenAI()
stream = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "Say this is a test"}],
stream=True,
)
for chunk in stream:
if chunk.choices[0].delta.content is not None:
print(chunk.choices[0].delta.content, end="")
Em Node / Typescript, uma solicitação de streaming se parece com:import OpenAI from "openai";
const openai = new OpenAI();
async function main() {
const stream = await openai.chat.completions.create({
model: "gpt-4o-mini",
messages: [{ role: "user", content: "Say this is a test" }],
stream: true,
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content || "");
}
}
main();
Análise de eventos enviados pelo servidor#
A análise de eventos enviados pelo servidor não é trivial e deve ser feita com cuidado. Estratégias simples como dividir por uma nova linha podem resultar em erros de análise. Recomendamos o uso de bibliotecas de cliente existentes quando possível. Modified at 2025-01-23 10:21:55