大模型JSON格式输出:instructor

参考:

https://github.com/567-labs/instructor

安装:

复制代码
pip install instructor

使用:

复制代码
from pydantic import BaseModel 
import instructor
from openai import OpenAI 

 # 定义你想要的数据结构 
class UserInfo(BaseModel):     
      name: str     
      age: int    
      skills: list[str]  

# 1. 準備工作:初始化用戶端
client = OpenAI(
    # 建議通過環境變數配置API Key,避免寫入程式碼。
    api_key="&&&393",
    # API Key與地區強綁定,請確保base_url與API Key的地區一致。
    base_url="https://&&olces.com/api/v3",
)

# 自动给 LLM 加上结构化约束
client = instructor.patch(client) 
 
user_info = client.chat.completions.create(    
 model="deepseek-v3-1-terminus",    
 response_model=UserInfo, #   直接传类,甚至不需要自己写 JSON Prompt    
 messages=[{"role": "user", "content": "Melon 今年 25 岁,擅长 Python 和 AI"}] ) 

print(user_info.name) # 直接拿到对象,舒服!
相关推荐
fthux5 小时前
装闭 RenoPit 源码解析(07):装修闭坑知识库与AI Prompt构建
人工智能·ai·开源·github·open source·renopit
fthux8 小时前
装闭 RenoPit 源码解析(06):SSE如何实时推送AI装修分析进度
人工智能·ai·开源·github·open source·renopit
LyridRelan9 小时前
Skill Cli MCP 的三者关系以及部分Q&A
人工智能·ai·个人开发
兮动人10 小时前
AI 开始接管工作台:谁会成为下一代电脑入口?
人工智能·ai·chatgpt·codex·workbuddy
@Mr_LiuYang11 小时前
状态栏动态上下文信息追加到Agent --《深入理解 AI Agent :设计原理与工程实践》实验2-8
人工智能·大模型·动态上下文·状态栏信息追加
CodeDevMaster13 小时前
关于PaddleOCR-VL部署与使用说明
docker·llm
众人皆醒我独醉14 小时前
分布式训练与 Ring AllReduce:从单卡绝望到多卡协同
人工智能·面试·llm
AI探索派14 小时前
AI视频笔记工具怎么选:Ai好记、通义听悟、Get笔记、听脑AI横向对比
ai·效率神器·视频总结·ai笔记·视频转笔记
天天有money15 小时前
API中转站与多账号内容运营:如何统一管理不同项目的调用
gpt·ai·chatgpt·产品运营·内容运营
yinghuoAI202615 小时前
电商卖货,本质上是“视觉的战争”
人工智能·ai·ai作画·ai作图·ai生视频