From a9b0c2a312bb80c0e0157ff79abe03ddea5e481c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9C=D0=B0=D1=80=D0=B8=D1=8F=20=D0=91=D0=B5=D1=80=D0=B4?= =?UTF-8?q?=D0=BD=D0=B8=D0=BA=D0=BE=D0=B2=D0=B0?= Date: Tue, 26 May 2026 10:48:31 +0000 Subject: [PATCH] add stream_agent.py --- stream_agent.py | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 stream_agent.py diff --git a/stream_agent.py b/stream_agent.py new file mode 100644 index 0000000..0613120 --- /dev/null +++ b/stream_agent.py @@ -0,0 +1,28 @@ +# stream_agent.py +import os, sys, time, json, openai +openai.api_key = os.getenv("OPENAI_API_KEY") +if not openai.api_key: + raise RuntimeError("Missing OPENAI_API_KEY") +def stream_response(prompt: str, model: str = "gpt-4o-mini") -> None: + try: + response = openai.ChatCompletion.create( + model=model, + messages=[{"role": "user", "content": prompt}], + stream=True, + temperature=0.7, + ) + for chunk in response: + delta = chunk["choices"][0]["delta"] + if "content" in delta: + sys.stdout.write(delta["content"]) + sys.stdout.flush() + print("\n--- Конец ответа ---") + except openai.OpenAIError as exc: + print(f"Ошибка при работе с OpenAI: {exc}", file=sys.stderr) + sys.exit(1) +if __name__ == "__main__": + if len(sys.argv) < 2: + print("Использование: python stream_agent.py \"Ваш запрос\"", file=sys.stderr) + sys.exit(1) + user_prompt = sys.argv[1] + stream_response(user_prompt)