run_with_assistant_extra_body_test.py 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import time
  2. import openai
  3. def test_run_with_assistant_extra_body():
  4. client = openai.OpenAI(base_url="http://localhost:8086/api/v1", api_key="xxx")
  5. # 创建带有 action 的 assistant
  6. assistant = client.beta.assistants.create(
  7. name="Assistant Demo",
  8. instructions="你是一个有用的助手",
  9. model="gpt-3.5-turbo-1106",
  10. extra_body={
  11. "extra_body": {
  12. "model_params": {
  13. "frequency_penalty": 0,
  14. "logit_bias": None,
  15. "max_tokens": 1024,
  16. "presence_penalty": 0.6,
  17. "temperature": 1,
  18. "presence_penalty": 0,
  19. "top_p": 1,
  20. }
  21. }
  22. },
  23. )
  24. print(assistant, end="\n\n")
  25. thread = client.beta.threads.create()
  26. print(thread, end="\n\n")
  27. message = client.beta.threads.messages.create(
  28. thread_id=thread.id,
  29. role="user",
  30. content="你好,介绍一下你自己",
  31. )
  32. print(message, end="\n\n")
  33. run = client.beta.threads.runs.create(thread_id=thread.id, assistant_id=assistant.id, instructions="")
  34. print(run, end="\n\n")
  35. while True:
  36. # run = client.beta.threads.runs.retrieve(thread_id=thread.id, run_id=run.id)
  37. run = client.beta.threads.runs.retrieve(thread_id=thread.id, run_id=run.id)
  38. if run.status == "completed":
  39. print("done!", end="\n\n")
  40. messages = client.beta.threads.messages.list(thread_id=thread.id)
  41. print("messages: ")
  42. for message in messages:
  43. assert message.content[0].type == "text"
  44. print(messages)
  45. print({"role": message.role, "message": message.content[0].text.value})
  46. break
  47. else:
  48. print("\nin progress...")
  49. time.sleep(1)