iT邦幫忙

2024 iThome 鐵人賽

DAY 9
0
自我挑戰組

從零打造客製化 AI 聊天機器人系列 第 9

[從零打造客製化 AI 聊天機器人] 基本的聊天功能

  • 分享至 

  • xImage
  •  

今天開始就要用 Python 來製作機器人聊天功能啦~
首先,先設計基本的聊天功能!

1. 安裝 openai 套件

pip install openai

https://ithelp.ithome.com.tw/upload/images/20240922/20169415LBRugQuA7D.png
沒有報錯表示安裝成功

2. 使用 Azure OpenAI 服務
建立 配置 檔案 openai_config.py

azure_endpoint = "https://你的服務名稱.openai.azure.com/"
api_key="Azure API 金鑰" 
api_version="2023-03-15-preview"  
model_name="gpt-35-turbo" 
embedding_model_name="text-embedding-3-large"
threshold = 1
intents_threshold = 1
chunk_size = 500
chunk_overlap_size = 200
delimiters=['。', ',', ',', '、', '。']
  • azure_endpoint:指向 Azure OpenAI 資源中創建的 URL
  • api_key:Azure OpenAI API 金鑰
  • api_version:Azure OpenAI API 版本號,不同版本支援不同功能
  • model_name:指定要使用的語言模型
  • embedding_model_name:生成文本嵌入(Embedding)的模型名稱
  • threshold :設定閾值
  • intents_threshold:設定意圖識別(Intent Recognition)閾值
  • chunk_size:將大型文本分塊(chunking)時,定義文本塊大小,最多包含多少字符
  • chunk_overlap_size :分塊時可能會有重疊,是為了確保上下文連貫性,定義字符重疊數
  • delimiters:文中分隔符,將文本分隔成多個片段或句子

3. 實踐基本對話

from openai import AzureOpenAI
from openai_config import *

client = AzureOpenAI(
    azure_endpoint=azure_endpoint,
    api_key=api_key,
    api_version=api_version
)

user_input = input("You:")

prompt = user_input.strip()

# 使用 Azure OpenAI ChatGPT 來創建聊天回應
response = client.chat.completions.create(
    model=model_name,
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": prompt}  # 使用者輸入
    ],
    temperature=0,  # 越高,回答越有創造性
    max_tokens=150,  # 控制回答長度
    top_p=0.95,  # 調整與控制AI模型輸出的隨機性,值越低時,模型輸出結果會更加的確定
    frequency_penalty=0,  # 調控進行推論時特定詞彙出現的頻率
    presence_penalty=0,  # 調控推論生成的內容中引入新概念或詞彙的傾向性
    stop=None
)

# 取得 AI 回應
response_text = response.choices[0].message.content

# 顯示回應
print("AI:" + response_text)

https://ithelp.ithome.com.tw/upload/images/20240922/20169415Ujd33SRMwE.png

這樣就可以正確調用 Azure OpenAI 的 ChatGPT 功能來進行聊天對話了。


上一篇
[從零打造客製化 AI 聊天機器人] 初步學習 ChromaDB,存儲和檢索資料
下一篇
[從零打造客製化 AI 聊天機器人] 多輪對話
系列文
從零打造客製化 AI 聊天機器人30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言