微信扫码
添加专属顾问
我要投稿
用代码编程打造企业级AI法律顾问,强大灵活,轻松实现专业法律咨询。 核心内容: 1. 提示词工程与大模型的结合应用 2. 重要概念补充:系统提示词、用户提示词、助理提示词 3. 具体实现步骤:准备工作、单次对话效果测试
这一篇将介绍,如何使用代码编程,实现同样的功能。更强大、更灵活,更适合企业使用。
1.Prompt是大模型的编程语言,提示词工程本质上还是调用大模型的能力,做了一层包装,能够完成特定的任务。
2.可以在调用大模型能力之前,以及大模型返回之后且返回用户之前,做一些特殊处理,让大模型更具针对性或者完成特殊功能。
3.对于大模型而言,提示词分为三类:
System Prompt(系统提示词):设定好之后,不会变化,每次提问,都会带上这个提示词,例如人设、步骤、要求。
User Prompt(用户提示词):每次用户提问时候给的提示词。
Assistant Prompt (助理提示词):大模型每次返回的提示词。
4.大模型本身没有记忆,所以多轮对话,都需要把每次对话的历史,以及当前用户的提问拼接在一起,组装成新的提示词给到大模型,大模型才会联系上下文进行回答。
import osfrom config.load_key import load_key# 加载 API Keyload_key()print(f'''你配置的 API Key 是:{os.environ["DASHSCOPE_API_KEY"][:5]+"*"*5}''')
from openai import OpenAIimport osclient = OpenAI( base_url = "https://api.siliconflow.cn/v1", api_key = os.getenv("DASHSCOPE_API_KEY"),)prompt = '''民事执行程序中,被执行人名下的房屋二拍仍然流拍,申请人以流拍价购买。人民法院裁定房屋归申请人所有后,经历多年才由人民法院交付。执行程序依法终结后,申请人主张自裁定生效之日到实际交付之日的损失,人民法院是否应当受理?被执行人是否应当损失承担赔偿责任?'''completion = client.chat.completions.create( model="deepseek-ai/DeepSeek-R1", messages=[{"role":"user","content":prompt}], temperature=0.6, top_p=0.7, max_tokens=4096, stream = True # 是否流式输出)for chunk in completion: if chunk.choices[0].delta.content is not None: print(chunk.choices[0].delta.content, end="")
from openai import OpenAIimport osclient = OpenAI( base_url = "https://api.siliconflow.cn/v1", api_key = os.getenv("DASHSCOPE_API_KEY"),)system_prompt = '''# 角色 你是资深大律师你的目标是针对用户给出的法律问题,一步一的思考,进行深度的回答,提出最细粒度的主张、法律依据、事实依据和可执行的步骤## 工作步骤 1.针对用户给出的案例背景和问题,进行第一次的分析,列出可能的主张、法律依据、事实依据和用户下一步可执行的操作。如果用户没有提供足够的事实依据,可提供过往同类型案例事实依据作为参考。2.针对第一步中的每一个步骤,进行进一步的拆解,作为子主张,分别再给出法律依据、事实依据和下一步可执行的操作。如果用户没有提供足够的事实依据,可提供过往同类型案例事实依据作为参考。3. 重复第二步,直到无法再进一步分解或者具体可执行为止。通过这样的对话,你可以做一个整体总结,按具体操作步骤,给客一个整体结论。'''def get_completion(prompt): completion = client.chat.completions.create( model="deepseek-ai/DeepSeek-R1", messages=[ {"role":"system", "content":system_prompt}, {"role":"user","content":prompt} ], temperature=0.6, top_p=0.7, max_tokens=4096, stream = True # 是否流式输出 ) for chunk in completion: if chunk.choices[0].delta.content is not None: yield chunk.choices[0].delta.contentuser_prompt = '''民事执行程序中,被执行人名下的房屋二拍仍然流拍,申请人以流拍价购买。人民法院裁定房屋归申请人所有后,经历多年才由人民法院交付。执行程序依法终结后,申请人主张自裁定生效之日到实际交付之日的损失,人民法院是否应当受理?被执行人是否应当损失承担赔偿责任?'''for result in get_completion(user_prompt): print(result, end="")
from openai import OpenAIimport osclient = OpenAI( base_url = "https://api.siliconflow.cn/v1", api_key = os.getenv("DASHSCOPE_API_KEY"),)system_prompt = '''# 角色 你是资深大律师你的目标是针对用户给出的法律问题,一步一的思考,进行深度的回答,提出最细粒度的主张、法律依据、事实依据和可执行的步骤## 工作步骤 1.针对用户给出的案例背景和问题,进行第一次的分析,列出可能的主张、法律依据、事实依据和用户下一步可执行的操作。如果用户没有提供足够的事实依据,可提供过往同类型案例事实依据作为参考。2.针对第一步中的每一个步骤,进行进一步的拆解,作为子主张,分别再给出法律依据、事实依据和下一步可执行的操作。如果用户没有提供足够的事实依据,可提供过往同类型案例事实依据作为参考。3. 重复第二步,直到无法再进一步分解或者具体可执行为止。通过这样的对话,你可以做一个整体总结,按具体操作步骤,给客一个整体结论。'''session = [ { "role": "system", "content": system_prompt }]def get_completion(prompt): session.append({"role":"user","content":prompt}) completion = client.chat.completions.create( model="deepseek-ai/DeepSeek-R1", messages=session, temperature=0.6, top_p=0.7, max_tokens=4096, stream = True # 是否流式输出 ) for chunk in completion: if chunk.choices[0].delta.content is not None: yield chunk.choices[0].delta.content # 把历史信息添加到session中 session.append({"role":"assistant","content":chunk.choices[0].delta.content})print("-----------第一轮对话-----------")user_prompt1 = '''民事执行程序中,被执行人名下的房屋二拍仍然流拍,申请人以流拍价购买。人民法院裁定房屋归申请人所有后,经历多年才由人民法院交付。执行程序依法终结后,申请人主张自裁定生效之日到实际交付之日的损失,人民法院是否应当受理?被执行人是否应当损失承担赔偿责任?'''for result in get_completion(user_prompt1): print(result, end="")print("-----------第二轮对话-----------")user_prompt2 = '''请根据上述对话,总结一下你的结论'''for result in get_completion(user_prompt2): print(result, end="")print("-----------第三轮对话-----------")user_prompt3 = '''请把最终结果,以markdown的形式输出'''for result in get_completion(user_prompt2): print(result, end="")
下一篇见啦。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-04-30
RACEF 提示词框架
2025-04-29
什么是 Playoff 提示词?它为什么能助你从AI中逼出最优决策与方案?
2025-04-28
拨开MCP的迷雾,聊聊LLM工具调用的本质(二):Prompt和API限定法
2025-04-27
扔掉你的“提示词大全”吧,来聊聊语言模型真正诡异的地方
2025-04-27
从命令到共创:AI提示词如何释放你的创造力?
2025-04-27
GPT-4o(多模态版)、Claude3.7、Gemini2.5最新系统提示词!
2025-04-27
Google:人人都能成为Prompt大师
2025-04-26
Manus 完整版系统提示词
2024-08-20
2024-06-29
2023-06-08
2024-09-17
2024-06-27
2024-06-26
2024-07-09
2024-07-12
2024-09-16
2024-06-14
2025-04-29
2025-04-27
2025-04-20
2025-04-16
2025-04-11
2025-02-25
2025-02-21
2025-01-05