Prompt管理技巧

"Prompt工程"(Prompt Engineering)是指设计和优化提示词(prompt)以引导大型语言模型(如ChatGPT、GPT-4等)生成更符合预期输出的过程和方法。它是一种利用语言模型的能力,通过构造特定的输入,来达到高质量输出的技术手段。

Jinja2 是一个用来生成动态网页内容的 Python 模板引擎,它的主要作用是将 Python 中的数据渲染到 HTML 页面中。但在本项目中jinja2可以用于自动化生成prompt模板。

Prompter

null 复制代码
from pathlib import Path
from jinja2 import Environment, FileSystemLoader
from typing import Dict, Any

class PromptEngine:
    def __init__(self, template_dir: str = "prompts"):
        self.env = Environment(
            loader=FileSystemLoader(template_dir),
            trim_blocks=True,
            lstrip_blocks=True
        )
    
    def render(self, template_name: str, variables: Dict[str, Any]) -> str:
        template = self.env.get_template(f"{template_name}.jinja2")
        return template.render(**variables)

prompt_engine = PromptEngine()

代码首先指明了存放prompt的目录,然后根据template_name找到对应的prompt,再将对应的属性进行填充。

示例prompt

python 复制代码
#predict
你是中华人民共和国最高人民法院的一位资深刑事审判法官,请你根据下方【案件事实】、【相关法条】进行法律分析,并严格按照下方【分析要求】撰写分析意见,适用于刑期量化与判决指导。

【案件事实】
{{fact}}

【相关法条】
{{context}}

【撰写要求】
1. 禁止使用"可能""大致"等模糊措辞,需做出明确、定量的法律判断。
2. 禁止引用未在《刑法》《司法解释》明示规定的酌定情节。
3. 所有刑期须在法定幅度内给出,表述方式为"X年X月"。
4. 金额需具体精确到"元",不得使用"约""大约"等模糊词。
5. 若为死刑案件,必须引用《刑法》第四十八条。
6. 若为经济犯罪,需说明违法所得数额及其计算方式。
7. 若为共同犯罪,必须区分主犯、从犯及其责任承担,并说明定罪量刑差异。


【结束符号】

其中的案件描述以及相关法条就需要进行填充。

相关法条通过使用rag技术查询语义相关的法条,然后输入模型对结果进行预测

【结束符号】用于标注结果,将模型的输出于prompt分开

相关推荐
模拟器连接器曾工几秒前
CCD图像视觉检测纸张表面缺陷检测设备
人工智能·计算机视觉·视觉检测·ccd视觉·ccd图像视觉检测
redsea_HR2 分钟前
2026年eHR系统选购:10大品牌核心差异对比
大数据·人工智能
模拟器连接器曾工3 分钟前
RV绝缘圆形端子铜鼻子AI视觉检测参数
人工智能·计算机视觉·视觉检测·ai视觉检测·rv绝缘圆形端子
Purple Coder11 分钟前
深度学习day-1
人工智能·深度学习
电商API_1800790524715 分钟前
电商数据采集实战:批量自动化获取淘宝、京东商品评论数据
大数据·运维·人工智能·数据挖掘·数据分析·自动化
smilejingwei22 分钟前
用 AI 编程生成 ECharts 图表并嵌入报表的实践
前端·人工智能·echarts·bi·报表工具·商业智能
【建模先锋】22 分钟前
卷积网络(视觉模型)发展史:从 CNN 到 Vision Transformer,再到视觉 Mamba 的主干演化全景图
网络·人工智能·深度学习·cnn·transformer·轴承故障诊断
螺丝钉code23 分钟前
设计系统 showdown:Awesome DESIGN.md vs UI UX Pro Max - AI 时代的设计规范新范式
人工智能·ui·ux
大任视点24 分钟前
道通科技:锚定能源革命与AI创新,多维布局打开成长空间
人工智能
一叶知秋yyds25 分钟前
Prompt Engineering 完全指南:让大模型更懂你
prompt