curl命令的玩法

開始前,請確保,

  1. 正確配置了著名的環境變量OPENAI_API_KEY
  2. 該API Key具有GPT4的權限

那我們現在開始。

1. 創建Assistant

curl "https://api.openai.com/v1/assistants" \
-u:$OPENAI_API_KEY \
-H "Content-Type: application/json" \
-H "OpenAI-Beta: assistants=v1" \
-d '{
"instructions": "You are a personal math tutor. When asked a question, write and run Python code to answer the question.",
"name": "Math Tutor"
"tools": [{"type": "code_interpreter"}],
"model": "gpt-4"
}'

響應中你會得到一個Assistant ID。

2. 創建Thread

Thread代表Assistant與用戶之間的會話。

curl https://api.openai.com/v1/threads \
-u:$OPENAI_API_KEY \
-H 'Content-Type: application/json' \
-H 'OpenAI-Beta: assistants=v1' \
-d '{
"messages": [
{
"role": "user",
"content": "Work out the sum of 1, 2 and 3"
}
]
}'

響應中你會得到一個Thread ID。

3. 提交一個Run

提交Run的任務是需要攜帶上述命令輸出中得到的Thread ID和Assistant ID。

curl https://api.openai.com/v1/threads/<thread_id>/runs \
-u:$OPENAI_API_KEY \
-H 'Content-Type: application/json' \
-H 'OpenAI-Beta: assistants=v1' \
-d '{
"assistant_id": "<assistant_id>"
}

響應中你會得到一個Run ID。

4. 查詢Run的狀態

curl https://api.openai.com/v1/threads/<thread_id>/runs/<run_id> \
-u:$OPENAI_API_KEY \
-H 'OpenAI-Beta: assistants=v1'

響應中你會得到該任務的狀態。

5. 獲取Assistant的響應/消息

Assistant的響應將是如下API調用中響應的最近一條消息。

curl https://api.openai.com/v1/threads/<thread_id>/messages \
-u:$OPENAI_API_KEY \
-H "Content-Type: application/json" \
-H "OpenAI-Beta: assistants=v1"

LangChain框架集成

LangChain開發團隊一直在積極響應OpenAI的變化。LangChain的最新RC版本已經支持了Assistants API。

確保您使用的LangChain版本至少是0.0.331rc2,以便使用Assistants API。

目前,LangChain通過langchain-experimental包提供了Assistants支持。

您唯一需要的類就是OpenAIAssistantRunnable,這將使代碼更加清晰。

聽起來非常簡單吧?讓我們來看看下面的內容。

1. 安裝Python包

$ pip install -U -q "langchain==0.0.331rc2" langchain-experimental "openai>=1.1"

2. 執行代碼完成與Assistant的交互

import os
os.environ["OPENAI_API_KEY"] = 'your valid OpenAI API key with GPT-4 enabled'

from langchain_experimental.openai_assistant import OpenAIAssistantRunnable

interpreter_assistant = OpenAIAssistantRunnable.create_assistant(
name="langchain assistant",
instructions="You are a personal math tutor. When asked a question, write and run Python code to answer the question.",
tools=[{"type": "code_interpreter"}],
model="gpt-4"
)

output = interpreter_assistant.invoke({"content": "Work out the sum of 1, 2 and 3"})
print(output)

短短數行代碼,就完成了一堆curl命令做的事情,是不是很輕松?


今天就先分享這么多吧。有興趣的同學趕緊玩起來!本次分享的完整代碼請參考:

https://github.com/sugarforever/LangChain-Advanced/blob/main/langchain_with_openai_assistants_api.ipynb

文章轉自微信公眾號@01麻瓜社

上一篇:

AI大模型實現OCR識別驗證碼

下一篇:

國產AI崛起:智譜AI 和 LlamaIndex 結合進行數據處理
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

數據驅動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內容創意新穎性、情感共鳴力、商業轉化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費