1 Pluspunkt 0 Minuspunkte

Ich habe diesen Code um mit der OpenAI Api von einem lokalen LM Studio Anfragen zu senden.

from openai import OpenAI

client = OpenAI(
    api_key="lm-studio", 
    base_url="http://172.21.0.134:80/v1"  
)

response = client.chat.completions.create(
    model="llava-phi-3-mini-gguf/llava-phi-3-mini-int4.gguf", 
    messages=[
        {"role": "user", "content": "Tell me a joke about cowboys."},
    ],
    stream=True
)

print(response.choices[0].message.content)

Aber wenn ich den Parameter Stream aus True stelle wird trotzdem zuerst der ganze Text generiert und auf einmal ausgegeben.

von  

1 Antwort

0 Pluspunkte 0 Minuspunkte

So kannst du die Antwort streamen.

for chunk in response:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)
von (728 Punkte)