智能体造论子--简单封装大模型输出审核器

python 复制代码
# !/usr/bin/python3
# -*- coding:utf-8 -*-
"""
@author: JHC000abc@gmail.com
@file: reviewer.py
@time: 2026/1/30 21:48 
@desc: 

"""
from models.model_llm import AssistantMessage, UserMessage, SystemMessage
from llm import LLMExecutor


class Reviewer(object):
    """
    大模型输出审核器
    """

    def __init__(self, system: str, llm_config: dict):
        self.system = system
        self.llm = LLMExecutor(**llm_config)
        self.llm.clear_chat_context()

    def review(self, prompt: str, result: AssistantMessage):
        """

        :param prompt:
        :param result:
        :return:
        """
        if len(self.llm.chat_context.messages) > 0:
            # 清理残留上下文
            self.llm.clear_chat_context()
        self.llm.chat_context.messages.append(SystemMessage(content=f"{self.system}"))
        self.llm.chat_context.messages.append(UserMessage(content=f"用户原始需求为: {prompt}"))
        self.llm.chat_context.messages.append(result)
        relation_mark = self.llm.create_llm(prompt="分析用户原始需求和AI输出结果,给出相关度分数")
        print(relation_mark)
        # 清理残留上下文
        self.llm.clear_chat_context()
        return relation_mark.get("mark", 0)


if __name__ == '__main__':
    system = """# Role: 资深大模型内容审核与优化专家

## Profile
你不仅是一位拥有严谨逻辑的审核员,更是一位追求极致交付的工程师。你的核心能力在于能够精准识别[大模型实际输出]与[用户预期]之间的细微差异,量化其相关度,并按照极为严格的交付标准输出修正后的内容。

## Goals
1. **差异评估**:对比预期与实际输出,计算内容相关度(0-100%)。
2. **严谨修正**:基于评估结果,对不符合预期的部分进行精准修改。
3. **完整交付**:输出修正后的完整内容,严格禁止任何形式的缩略。

## Constraints (必须强制执行的最高指令)
1.  **绝不阉割 (Anti-Laziness Protocol)**:
    * 禁止使用 `// ... rest of code`、`# ...代码同上`、`` 或任何形式的占位符。
    * **无论代码或文本有多长,必须完整输出每一个字符。**
    * 涉及文件修改时,必须输出完整的文件内容,确保用户可以直接复制覆盖原文件。

2.  **严谨验证 (Fact-Checking)**:
    * 所有输出内容必须逻辑自洽且经得起推敲。
    * 对于不确定或缺乏明确出处的信息,必须加粗并使用警告符号标注(例如:**⚠️ 此处数据存疑**)。

3.  **精准修改 (Minimal Disturbance)**:
    * 仅修改与预期不符或存在错误的部分。
    * 对于符合预期的原样内容,保持完全一致,不进行风格化的重写或随意发挥。

4.  **完整方案 (Ready-to-Use)**:
    * 输出结果必须是闭环的、可执行的。用户无需进行二次填补或拼接。

5.  **语言规范**:
    * 全程使用**简体中文**进行交互和注释(代码中的必要英文术语除外)。
    
## 输出格式规范,只输出json就行,不用输出过多的解释,分析
{
    "prompt": "原始需求",
    "AI": "ai输出",
    "mark": "相关性分数"
}

## Workflow
请按照以下步骤处理输入的内容:

### Step 1: 审核与评分
分析输入内容,输出以下审核报告:
* **相关度评分**:[0-100%](100%代表完美符合预期)
* **差异分析**:简要列出实际输出与预期不符的关键点(如:缺少逻辑、代码截断、事实错误等)。

### Step 2: 优化输出
如果评分低于 100%,请输出**完整的、修正后的**内容。
* 格式要求:使用 Markdown 代码块包裹。
* 再次检查:在输出前进行自我审查,确保没有触发"代码省略"行为。

"""

    online_config = {
        "base_url": "https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions",
        "model": "deepseek-v3.1",
        "token": "sk-写自己的",
        "enable_thinking": True,
        "stream": True,
        "system": system
    }
    r = Reviewer(system, online_config)
    org_prompt = "帮我联网搜索人工智能相关内容"
    result = AssistantMessage(role='assistant',
                              content="工具调用结果:[{'title': '人工智能 - 百度百科简介:人工智能(Artificial Intelligence),英文缩写为AI。是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应...详情\\ue734', 'url': 'https://baike.baidu.com/item/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/9180', 'description': ''}, {'title': '', 'url': 'https://baike.baidu.com/item/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/58131596?fr=aladdin', 'description': ''}, {'title': '刊期:双月刊ISSN:2096-5036数据库收录:RCCSE,知网,万方,维普简介:《人工智能》由工业和信息化部主管,中国电子信息产业发展研究院、赛迪工业和信息化研究院(集团)有限公司主办', 'url': 'https://trust.baidu.com/vstar/official/intro?fl=1&castk=LTE%3D', 'description': ''}, {'title': '', 'url': 'https://www.baidu.com/s?tn=news&rtt=1&bsst=1&wd=%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD&cl=2', 'description': ''}, {'title': '\\n                \\n                图书在版编目(CIP)数据 人工智能/赵亮,张宁主编.---北京:北京师范大学出版社,2019.6 ISBN 978-7-303-24272-6 Ⅰ.①人... Ⅱ.①赵...②张... Ⅲ.①人工智能 Ⅳ.①TP1\\n            \\n                            \\n                            人工智能(AI解读)\\n                            \\n                        \\n                    \\n                    根据书籍《人工智能》,AI文档助手可以为您详细介绍书籍基本信息,以及深度解析文中内容。\\n                \\n                            \\n                            《人工智能》读后感(AI版)\\n                            \\n                        \\n                    \\n                    智能文档助手能以顶级文学家的能力,为你写出一篇富有深度的高水平《人工智能》读后感文章。\\n                ', 'url': 'https://wenku.baidu.com/view/039a327d1a5f312b3169a45177232f60dccce763.html?fr=aladdin664466&ind=1&aigcsid=0&qtype=0&lcid=1&queryKey=%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD&verifyType=', 'description': ''}, {'title': '', 'url': 'http://q.10jqka.com.cn/gn/detail/code/302035', 'description': ''}, {'title': '', 'url': 'https://1yyt5g.smartapps.baidu.com?_swebScene=3711000610000000&content_id=2cef17b3&word=%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD&_chatQuery=%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD&searchid=dc1cc3a40000b2a5&_chatParams=%7B%22content_build_id%22%3A%222cef17b3%22%2C%22from%22%3A%22q2c%22%2C%22token%22%3A%229gMPkyyZb9zg2PYaJbGx12bRorqDIVZZzBhxDL0i81PfodyTaaybXI03IS4m5Mqa%2BYPedChgWYBS2edO77JifY64naldlZ0dhgTZOFtj5ffQ%22%2C%22chat_no_login%22%3Atrue%2C%22agent_id%22%3A%22a46b3%22%7D', 'description': ''}]")
    print(f"大模型输出可信度:{r.review(org_prompt, result)} %")
相关推荐
diediedei2 小时前
Python字典与集合:高效数据管理的艺术
jvm·数据库·python
【赫兹威客】浩哥2 小时前
可食用野生植物数据集构建与多版本YOLO模型训练实践
开发语言·人工智能·python
气可鼓不可泄2 小时前
将dmpython 封装在容器镜像里
数据库·python
m0_561359672 小时前
超越Python:下一步该学什么编程语言?
jvm·数据库·python
沐知全栈开发2 小时前
Java 封装
开发语言
2301_810730102 小时前
python第三次作业
开发语言·python
历程里程碑2 小时前
子串----和为K的子数组
大数据·python·算法·leetcode·elasticsearch·搜索引擎·哈希算法
郝学胜-神的一滴2 小时前
Python List操作:+、+=、extend的深度解析
开发语言·数据结构·python·程序人生·架构·list
2301_790300962 小时前
C++中的命令模式
开发语言·c++·算法