# 參考網址 https://chrislee0728.medium.com/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8-gemini-api-4458fecbd50f https://ai.google.dev/tutorials/python_quickstart # CODE #### 初次對話 AI.py ``` import google.generativeai as genai import os from dotenv import load_dotenv load_dotenv(".env") api_key = os.getenv('Gemini_API_KEY') genai.configure(api_key = api_key) model = genai.GenerativeModel('gemini-pro') # 初次對話 response = model.generate_content('你好') print(response.text) ``` 輸出結果:  #### 連續對話 AI.py ``` import google.generativeai as genai import os from dotenv import load_dotenv # 安裝pip install google-generativeai 需要用管理員權限開啟cmd後再安裝 load_dotenv(".env") api_key = os.getenv('Gemini_API_KEY') genai.configure(api_key = api_key) # 調用模型 model = genai.GenerativeModel('gemini-pro') #找尋歷史對話紀錄以方便延續對話 chat = model.start_chat(history=[]) # 對話的接續,使用chat.send_message函式執行 response = chat.send_message("我想學習deep learning要從哪邊開始入手") print(response.text) ``` 輸出結果:  # 差別 差異比較:model.generate_content() vs. chat.send_message() 這兩個方法都是用來與語言模型互動,但它們的用途和功能略有不同: ###### model.generate_content() 用途: 主要用於生成文本內容,例如文章、故事、詩歌等。 輸入: 通常接受一個字符串作為提示或上下文,模型會根據此輸入生成新的文本。 輸出: 返回生成的文本字符串。 功能: 更注重文本的創造性和連貫性。 可以控制生成文本的长度、风格等参数。 不具備記憶先前对话的能力。 ###### chat.send_message() 用途: 主要用於進行对话式交互,例如聊天机器人。 輸入: 接受一个字符串作为用户的消息。 輸出: 返回模型的回复消息。 功能: 更注重对话的交互性和流畅性。 可以记住先前的对话内容,并根据上下文进行回复。 可能不擅长生成长篇或富有创意的文本。 ###### 總結 model.generate_content() 适合生成文本内容,而 chat.send_message() 适合进行对话交互。 选择哪种方法取决于你的具体需求。 例子 如果你想要写一篇关于未来的科幻故事,可以使用 model.generate_content() 并提供一些相关的提示,例如 "22世纪的火星殖民地"。 如果你想要构建一个可以回答用户问题的聊天机器人,可以使用 chat.send_message() 来处理用户的提问。 # 其他常用方法 除了 model.generate_content() 和 chat.send_message(),还有许多其他方法可用于与语言模型交互,以下列举一些常见例子: 1. model.embedding(): 用途: 将文本转换为向量表示,用于语义相似度计算、文本分类等任务。 输入: 文本字符串。 输出: 向量 (通常是高维向量)。 2. model.translate(): 用途: 进行机器翻译,将文本从一种语言翻译成另一种语言。 输入: 源语言文本和目标语言代码。 输出: 目标语言文本。 3. model.summarize(): 用途: 将长文本摘要成简短的概述。 输入: 长文本字符串。 输出: 摘要文本。 4. model.answer_question(): 用途: 根据提供的上下文回答问题。 输入: 问题和相关上下文文本。 输出: 问题的答案。 5. 模型微调 (Fine-tuning): 用途: 根据特定任务和数据集,对预训练模型进行微调,使其在该任务上表现更佳。 方法: 通常需要编写代码,使用训练数据对模型进行训练。
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up