如何在Python中向已有的OpenAI Assistant上传文件?
向已有的OpenAI Assistant添加新文件的方法
要给已获取的Assistant添加新文件,只需两步:上传目标文件、更新Assistant的文件列表(注意保留原有文件,避免覆盖)。
完整代码示例
from openai import OpenAI # 初始化客户端 client = OpenAI(api_key="你的API密钥") assistant_id = "你的现有助手ID" # 1. 获取已有的Assistant assistant = client.beta.assistants.retrieve(assistant_id=assistant_id) # 2. 上传新文件(指定purpose为'assistants') new_file = client.files.create( file=open("新文件.pdf", "rb"), purpose='assistants' ) # 3. 更新Assistant,追加新文件ID到现有列表中 updated_assistant = client.beta.assistants.update( assistant_id=assistant_id, # 合并原有文件ID和新文件ID,避免覆盖 file_ids=assistant.file_ids + [new_file.id] ) # 验证更新结果 print(f"更新后助手的文件列表:{updated_assistant.file_ids}")
关键说明
- 上传文件时必须指定
purpose='assistants',否则文件无法被Assistant的检索工具使用。 - 更新
file_ids时,一定要将原有列表和新文件ID合并,直接赋值[new_file.id]会替换掉所有已关联的文件。 - 如果不需要保留原有文件,直接替换为
file_ids=[new_file.id]即可。
内容的提问来源于stack exchange,提问作者Dalireeza
相关产品推荐
相关产品推荐

