【ollama】自定义结构化输出
自定义字段models.pyfromtypingimportUnion,LiteralfrompydanticimportBaseModel,FieldclasssendGroupMsg(BaseModel):type:Literal[send_group_msg]Field(description指令类型标识固定为 send_group_msg)carenum:strField(description发送群消息的问题单号单号如567)msg:strField(description群消息的内容)oper:strField(default发群消息,description具体的操作名称固定是发群消息)classsendMsg(BaseModel):type:Literal[send_msg]Field(description指令类型标识固定为 send_msg)carenum:strField(description发送消息的问题单号例如567)msg:strField(description发送的消息内容。若用户未指定具体内容)oper:strField(default发消息,description具体的操作名称固定是发消息)classsendPhoneMsg(BaseModel):type:Literal[send_phone_msg]Field(description指令类型标识固定为 send_phone_msg)carenum:strField(description待发送短信的问题单号例如567)oper:strField(default手机短信,description具体的操作名称固定是手机短信)classAllCommands(BaseModel):task:Union[sendGroupMsg,sendPhoneMsg,sendMsg]Field(description根据输入文本判断指令类型。)main.pyfromtypingimportUnion,LiteralfrompydanticimportBaseModel,FieldimportollamaimportosfrommodelsimportAllCommandsimportsys os.environ[NO_PROXY]xxxx,127.0.0.1,localhost,::1clientollama.Client(hosthttp://xxxx:11434)defgenerate_command(user_text):promptf请从以下文本中严格提取指令任务。 要求 1. 必须严格提取原文的单号和操作名严禁翻译或改写。 2. 必须根据操作语义准确判断 type 字段。 3. 严格按照给定的 JSON Schema 格式输出。 4. 如果文本包含“加内容”时使用 add_first_inof。如果文本包含“加记录”、“添加记录”时使用add_new_info 文本内容{user_text} print(f 正在请求模型计算:...)responseclient.chat(modelds05288b:latest,# modelqwen3:8b,messages[{role:user,content:prompt}],formatAllCommands.model_json_schema(),options{temperature:0})print(f 模型计算完毕即将返回结果:...)resultAllCommands.model_validate_json(response.message.content)print(result)returnresultwhileTrue:print(请输入多行文本输入完成后按 CtrlD/CtrlZ)user_questionsys.stdin.read()final_answergenerate_command(user_question)print(\n✅ 最终答案,final_answer)print( [系统提示] 准备迎接下一个问题。\n)

相关新闻

5G建设转型与卫星通信技术解析

5G建设转型与卫星通信技术解析

1. 5G无线集采缩水40%背后的行业变局最近三大运营商5G无线主设备集采规模同比减少40%的消息引发行业震动。作为从业十余年的通信工程师,我认为这反映了5G建设进入深水区的典型特征。从技术角度看,5G网络建设可分为三个阶段:2019-2021年的规模…

2026/7/23 3:52:43 阅读更多 →
TM4C1294模拟比较器内部参考电压配置与实战指南

TM4C1294模拟比较器内部参考电压配置与实战指南

1. 项目概述与核心价值在嵌入式硬件开发,尤其是涉及模拟信号监测和阈值检测的应用中,模拟比较器是一个既基础又至关重要的外设。它就像一个反应极快的“电压裁判”,实时比较两个输入端的电压高低,并立即给出一个“高”或“低”的数…

2026/7/23 3:52:43 阅读更多 →
SolidWorks 2019 64位安装与优化全指南

SolidWorks 2019 64位安装与优化全指南

1. 安装前的准备工作在开始安装SolidWorks 2019 64位版本之前,有几个关键准备工作需要完成。首先确认你的电脑配置是否满足最低系统要求:操作系统需要Windows 7 SP1、Windows 8.1或Windows 10(64位版本);处理器至少需要…

2026/7/23 3:52:43 阅读更多 →

最新新闻

Claude Tag自动化代码审查实践:提升PR处理效率80%

Claude Tag自动化代码审查实践:提升PR处理效率80%

这次我们来看一个来自 Anthropic 团队的技术实践分享:Claude Tag 在代码审查和 PR 处理中的实际应用效果。根据官方透露,Claude Tag 已经承担了团队 65% 的产品工程 PR 工作,同时系统提示词长度缩减了 80%,这在工程效率提升方面是…

2026/7/23 4:32:58 阅读更多 →
随机数指纹技术:AI模型防篡改与完整性验证实践

随机数指纹技术:AI模型防篡改与完整性验证实践

这次我们来看一个很有意思的技术话题:如何用随机数指纹识别AI模型是否被调包。在AI模型部署和使用的过程中,模型安全是一个容易被忽视但至关重要的问题。当你下载一个预训练模型,或者从第三方获取模型文件时,如何确认这个模型就是…

2026/7/23 4:32:58 阅读更多 →
本地部署AI工具包:图像处理、语音合成与文本识别集成指南

本地部署AI工具包:图像处理、语音合成与文本识别集成指南

这次我们来看一个本地部署的AI工具项目。这个项目的主要特点是支持多种AI功能集成,包括图像处理、语音合成、文本识别等能力,适合需要在本地环境运行AI模型的开发者。从项目信息来看,这个工具包提供了相对完整的本地AI解决方案,支…

2026/7/23 4:32:58 阅读更多 →
基于SLAM十四讲经典Sophus示例代码对应李代公式

基于SLAM十四讲经典Sophus示例代码对应李代公式

本文基于SLAM十四讲经典Sophus示例代码 Sophus代码逐模块拆解:SO(3)、SE(3)李群李代数对应数学公式 把每一行代码和李群、李代数数学公式一一对应,方便学习SLAM位姿表示与扰动模型。 符号约定(与Sophus库保持一致) SO(3)\boldsymb…

2026/7/23 4:32:57 阅读更多 →
灰狼优化与AdaBoost混合CNN训练方法解析

灰狼优化与AdaBoost混合CNN训练方法解析

1. 项目背景与核心价值在深度学习领域,优化算法的选择直接影响模型性能。传统梯度下降法容易陷入局部最优,而群体智能算法虽具全局搜索能力却收敛缓慢。这项研究创新性地将灰狼优化(GWO)与AdaBoost集成到CNN训练中,形成混合优化器&#xff0c…

2026/7/23 4:32:57 阅读更多 →
工程POM引入mybatis-plus-boot-starter后启动依赖冲突解决

工程POM引入mybatis-plus-boot-starter后启动依赖冲突解决

好问题!这是因为 mybatis-plus-boot-starter 本身并不直接依赖 mybatis-spring-boot-starter,它内部已经内联了 MyBatis 相关的核心依赖。让我解释一下为什么需要显式引入它:MyBatis-Plus 3.4.2 的依赖结构mybatis-plus-boot-starter:3.4.2 的…

2026/7/23 4:31:57 阅读更多 →

日新闻

从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表)

从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表)

更多请点击: https://intelliparadigm.com 第一章:从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表) 当AI副业主理人不再仅满足于单次服务交付,而是主动构建可复用、可裂变、可…

2026/7/23 0:00:25 阅读更多 →
AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析

AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析

更多请点击: https://codechina.net 第一章:AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析 在对2,346篇跨行业AI生成文案的A/B测试数据进行聚类分析后,我们发现&#xff1…

2026/7/23 0:01:26 阅读更多 →
Chitchatter完整指南:免费开源的终极点对点安全聊天工具

Chitchatter完整指南:免费开源的终极点对点安全聊天工具

Chitchatter完整指南:免费开源的终极点对点安全聊天工具 【免费下载链接】chitchatter Secure peer-to-peer chat that is serverless, decentralized, and ephemeral 项目地址: https://gitcode.com/gh_mirrors/ch/chitchatter Chitchatter是一款革命性的安…

2026/7/23 0:01:26 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/22 8:58:19 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/22 19:43:43 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/22 12:54:44 阅读更多 →

月新闻