这是我从API文档中获取的代码,以便开始多回合聊天

model = genai.GenerativeModel("gemini-pro")
messages = [{'role':'user', 'parts': ['hello']}]
response = model.generate_content(messages) # "Hello, how can I help"
messages.append(response.candidates[0].content)
messages.append({'role':'user', 'parts': ['How does quantum physics work?']})
response = model.generate_content(messages)

但我遇到了以下错误:

类型错误:无法创建Blob,应为BlobdictImage类型(PIL.Image.ImageIPython.display.Image). 得到一个:类"google.ai.generativelanguage_v1beta.types.content.Content"> 值:零件{ 文本:"你好" }

我还try 使用send_Message功能,但第二次try 使用send_Message后也出现了同样的错误.

推荐答案

作为一个简单的修改,下面的修改怎么样?

修改脚本1:

genai.configure(api_key=apiKey)
model = genai.GenerativeModel("gemini-pro")
messages = [{"role": "user", "parts": ["hello"]}]
response = model.generate_content(messages)
messages.append({"role": "model", "parts": [response.text]})
print("--- response 1")
print(response.text)

messages.append({"role": "user", "parts": ["How does quantum physics work?"]})
response = model.generate_content(messages)
print("--- response 2")
print(response.text)

修改脚本2:

作为另一个修改,下面的修改怎么样?Ref

import google.generativeai as genai

apiKey = "###" # If you use API key, please set your API key.


genai.configure(api_key=apiKey)
model = genai.GenerativeModel("gemini-pro")

chat = model.start_chat()


def get_chat_response(chat: genai.ChatSession, prompt: str) -> str:
    response = chat.send_message(prompt)
    return response.text


prompt = "hello"
print(get_chat_response(chat, prompt))

prompt = "How does quantum physics work?"
print(get_chat_response(chat, prompt))

Python相关问答推荐

如何在PIL、Python中对图像应用彩色面膜?

按照行主要蛇扫描顺序对点列表进行排序

计算相同形状的两个张量的SSE损失

如何使用Jinja语法在HTML中重定向期间传递变量?

如何将双框框列中的成对变成两个新列

Python 约束无法解决n皇后之谜

管道冻结和管道卸载

在Wayland上使用setCellWidget时,try 编辑QTable Widget中的单元格时,PyQt 6崩溃

我如何使法国在 map 中完全透明的代码?

如何让这个星型模式在Python中只使用一个for循环?

用砂箱开发Web统计分析

考虑到同一天和前2天的前2个数值,如何估算电力时间序列数据中的缺失值?

如何找出Pandas 图中的连续空值(NaN)?

计算空值

如何根据rame中的列值分别分组值

如何求相邻对序列中元素 Select 的最小代价

语法错误:文档. evaluate:表达式不是合法表达式

仅使用预先计算的排序获取排序元素

如何在Gekko中处理跨矢量优化

如何在Airflow执行日期中保留日期并将时间转换为00:00