Files
SalesOptimizer/assistant.py

45 lines
1.4 KiB
Python

import sys
import json
import time
from openai import OpenAI
def get_assistant_response(conversation):
client = OpenAI(api_key='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')
# Thread erstellen
thread = client.beta.threads.create()
# Alle Nachrichten zum Thread hinzufügen
for message in conversation:
client.beta.threads.messages.create(
thread_id=thread.id,
role=message['role'],
content=message['content']
)
# Run mit dem Assistant starten
run = client.beta.threads.runs.create(
thread_id=thread.id,
assistant_id="asst_0LyJEWQS90Sx0oEIYBVWE47C"
)
# Auf Antwort warten
while True:
run_status = client.beta.threads.runs.retrieve(
thread_id=thread.id,
run_id=run.id
)
if run_status.status == 'completed':
break
time.sleep(1)
# Antwort abrufen
messages = client.beta.threads.messages.list(thread_id=thread.id)
assistant_message = messages.data[0].content[0].text.value
return {"response": assistant_message}
if __name__ == "__main__":
conversation = json.loads(sys.argv[1])
response = get_assistant_response(conversation)
print(json.dumps(response))