openai/openai-python

Public

mirrored from https://github.com/openai/openai-pythonAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
v1.4.0

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

examples/assistant.py

47lines · modeblame

f6c2aedfMuhammed Al-Dulaimi2 years ago1import time
2
2343e630Stainless Bot2 years ago3import openai
4
f6c2aedfMuhammed Al-Dulaimi2 years ago5# gets API Key from environment variable OPENAI_API_KEY
6client = openai.OpenAI()
7
8assistant = client.beta.assistants.create(
9name="Math Tutor",
10instructions="You are a personal math tutor. Write and run code to answer math questions.",
11tools=[{"type": "code_interpreter"}],
12model="gpt-4-1106-preview",
13)
14
15thread = client.beta.threads.create()
16
17message = client.beta.threads.messages.create(
18thread_id=thread.id,
19role="user",
2343e630Stainless Bot2 years ago20content="I need to solve the equation `3x + 11 = 14`. Can you help me?",
f6c2aedfMuhammed Al-Dulaimi2 years ago21)
22
23run = client.beta.threads.runs.create(
2343e630Stainless Bot2 years ago24thread_id=thread.id,
25assistant_id=assistant.id,
26instructions="Please address the user as Jane Doe. The user has a premium account.",
f6c2aedfMuhammed Al-Dulaimi2 years ago27)
28
29print("checking assistant status. ")
30while True:
2343e630Stainless Bot2 years ago31run = client.beta.threads.runs.retrieve(thread_id=thread.id, run_id=run.id)
f6c2aedfMuhammed Al-Dulaimi2 years ago32
33if run.status == "completed":
34print("done!")
2343e630Stainless Bot2 years ago35messages = client.beta.threads.messages.list(thread_id=thread.id)
f6c2aedfMuhammed Al-Dulaimi2 years ago36
37print("messages: ")
38for message in messages:
2343e630Stainless Bot2 years ago39assert message.content[0].type == "text"
40print({"role": message.role, "message": message.content[0].text.value})
f6c2aedfMuhammed Al-Dulaimi2 years ago41
42client.beta.assistants.delete(assistant.id)
2343e630Stainless Bot2 years ago43
f6c2aedfMuhammed Al-Dulaimi2 years ago44break
45else:
46print("in progress...")
2343e630Stainless Bot2 years ago47time.sleep(5)