Chat API 當然也可以像前面章節所介紹開發 但 Gemini API的方式,去實作各大平台的串接及應用的開發。
以下試做 GAS 呼叫 Chat API
以下改寫成 GAS 呼叫
回傳 message = completion.choices[0].message.content 就可以了
curl https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Who won the world series in 2020?"
},
{
"role": "assistant",
"content": "The Los Angeles Dodgers won the World Series in 2020."
},
{
"role": "user",
"content": "Where was it played?"
}
]
}'
response :
{
"choices": [
{
"finish_reason": "stop",
"index": 0,
"message": {
"content": "The 2020 World Series was played in Texas at Globe Life Field in Arlington.",
"role": "assistant"
},
"logprobs": null
}
],
"created": 1677664795,
"id": "chatcmpl-7QyqpwdfhqwajicIEznoc6Q47XAyW",
"model": "gpt-3.5-turbo-0613",
"object": "chat.completion",
"usage": {
"completion_tokens": 17,
"prompt_tokens": 57,
"total_tokens": 74
}
}
## 回應
以下是使用 Google Apps Script (GAS) 呼叫 OpenAI API 並回傳 `message` 的範例程式碼:
```jsx
function callOpenAI() {
var url = "<https://api.openai.com/v1/chat/completions>";
var apiKey = "YOUR_OPENAI_API_KEY"; // 請將 YOUR_OPENAI_API_KEY 替換為實際的 API 金鑰
var payload = {
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Who won the world series in 2020?"
},
{
"role": "assistant",
"content": "The Los Angeles Dodgers won the World Series in 2020."
},
{
"role": "user",
"content": "Where was it played?"
}
]
};
var options = {
"method": "post",
"contentType": "application/json",
"headers": {
"Authorization": "Bearer " + apiKey
},
"payload": JSON.stringify(payload)
};
var response = UrlFetchApp.fetch(url, options);
var json = JSON.parse(response.getContentText());
var message = json.choices[0].message.content;
Logger.log(message);
return message;
}
請注意,您需要在腳本中替換 "YOUR_OPENAI_API_KEY"
為實際的 OpenAI API 金鑰。這段程式碼會將請求發送到 OpenAI API,然後回傳助手的回應內容。
那自然基本的 NLP 的工作,就可以直接用 Chat API 去時做了。
而如前面所介紹 Open AI 對於將 Agent 的佈局及開發的方式, 主要的開發的邏輯,例如 function calling 及 RAG 都移到了Assistant API 。
而用 Assistant API 的好處, 諸如不用再去想對話流,要存在哪裡, 另外維度資料的訓練也直覺多了。
我是 Wolke。我是一名專業程式開發者,專長是開發 AI 和程式解決方案。
•
我投入了不少時間在專業發展上。我是多本書的作者,其中包括《LINE聊天機器人+AI+雲端+開源+程式:輕鬆入門到完整學習》和《ChatGPT來襲,未來人人都需具備的運算思維!應用詠唱工程來釋放程式生產力—程式學習/開發篇》。也有出版線上課程,我熱衷於分享我的經驗和技術,幫助其他開發者更好地利用 AI 工具。
•
也在許多知名大學、論壇、社團擔任講者,如果貴方有需要也歡迎與我聯繫。
2023年 講座 紀錄
最後這篇文章若有切合你的需求,敬請訂閱按讚分享