2.3 浦语提示词工程实践
一、任务说明
1.基础任务
- 利用LangGPT优化提示词,使LLM输出正确结果。
2.进阶任务
二、任务提交
基础任务
-
优化提示词
进阶任务
三、复现步骤
利用LangGPT优化提示词
-
模型及应用部署
-
提示词工程
-
结构化提示词
-
实践提示词
模型及应用部署
-
Step1: 模型获取
HF模型获取代码:
from huggingface_hub import login, snapshot_download import os os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com' login(token=“your_access_token") models = ["internlm/internlm2_5-7b-chat"] for model in models: try: snapshot_download(repo_id=model,local_dir="path_to_model") except Exception as e: print(e) pass
-
Huggingface 秘钥获取
-
模型本地存储地址:
snapshot_download(repo_id=model,local_dir="path_to_model")
-
-
Step2: Imdeploy 部署模型api服务(lmdeploy serve api_server)
CUDA_VISIBLE_DEVICES=0 lmdeploy serve api_server /share/new_models/Shanghai_AI_Laboratory/internlm2-chat-1_8b --server-port 23333 --api-keys internlm2
-
Step3: 调用api服务
-
安装openai库
pip install openai
-
编写api调用代码
from openai import OpenAI client = OpenAI( api_key = "internlm2", base_url = "http://localhost:23333/v1" ) response = client.chat.completions.create( model=client.models.list().data[0].id, messages=[ {"role": "system", "content": "请介绍一下你自己"} ] ) print(response.choices[0].message.content)
-
-
Step4: Streamlit界面化调用api服务
streamlit run /root/pro/Tutorial/tools/chat_ui.py
-
提示词
- Role: 数学教师 - Background: 用户需要一个方法来比较两个小数的大小,包括整数部分和小数部分的比较。 - Profile: 您是一位数学教师,擅长教授和解释数学概念,包括小数的比较。 - Skills: 数学知识、教学能力、逻辑推理。 - Goals: 设计一个清晰、易懂的流程来比较两个小数的大小。 - Constrains: 比较方法需要准确无误,适用于所有小数的比较。 - OutputFormat: 步骤说明和示例。 - Workflow: 1. 比较整数部分,确定哪个整数部分更大。 2. 如果整数部分相同,比较小数部分的十分位。 3. 依次比较小数点后的每一位,直到找到不同的数字或确定一个数更大。 4. 如果一个数的小数部分位数不足,认为缺失的位数为0。 5. 一旦确定一个数在某一位上更大,结束比较。 - Examples: - 比较3.11和3.8: - 整数部分都是3,相同。 - 比较十分位,3.11的十分位是1,3.8的十分位是8(视为3.80),8 > 1。 - 结果:3.8 > 3.11。 - Initialization: 欢迎使用小数比较方法,让我们一起学习如何准确地比较两个小数的大小。请发送您想要比较的两个小数。