LLM指令微调Prompt的最佳实践(五):文本转换Prompt

文章目录

  • 1. 前言
  • 2. Prompt定义
  • 3. 编写文本转换的Prompt
    • 3.1 文本翻译
      • 3.1.1 识别语种
      • 3.1.2 多语种转换
      • 3.1.3 语气转换
      • 3.1.4 综合翻译器
    • 3.2 风格转换
    • 3.3 文本格式转换
    • 3.4 拼写/语法纠错
  • 4. 参考


1. 前言

前情提要:
《LLM指令微调Prompt的最佳实践(一):Prompt原则

《LLM指令微调Prompt的最佳实践(二):Prompt迭代优化》
《LLM指令微调Prompt的最佳实践(三):编写文本摘要的Prompt》
《LLM指令微调Prompt的最佳实践(四):编写推理的Prompt》

本文根据《面向开发者的LLM入门教程》 ,总结凝练核心内容,加深印象,同时方便快速查阅浏览。

2. Prompt定义

Prompt 是给语言模型提供的输入文本或问题,用于引导模型生成相应的输出或回答。Prompt 可以看作是一个提示或引导,帮助模型理解用户的需求或意图,并生成相关的响应。

主要特点:
(1)引导模型行为:Prompt 用于引导和控制模型的生成行为。通过设计不同的 Prompt,可以让模型生成不同类型的输出,例如回答问题、完成句子、生成故事等。

(2)上下文提供:Prompt 通常包括上下文信息或问题陈述,以帮助模型更好地理解生成任务。例如,给定一段文本让模型续写或提出一个问题让模型回答。

(4)灵活性和适应性:Prompt 可以根据具体任务进行调整和优化,从而提高模型在特定任务上的性能。良好的 Prompt 设计可以显著改善模型输出的质量和相关性。

3. 编写文本转换的Prompt

3.1 文本翻译

3.1.1 识别语种

prompt = f"""
请告诉我以下文本是什么语种: 
```Combien coûte le lampadaire?```
"""
response = get_completion(prompt)
print(response)
这段文本是法语。

3.1.2 多语种转换

from tool import get_completion

prompt = f"""
请将以下文本分别翻译成中文、英文、法语和西班牙语: 
```I want to order a basketball.```
"""
response = get_completion(prompt)
print(response)

中文:我想订购一个篮球。
英文:I want to order a basketball.
法语:Je veux commander un ballon de basket.
西班牙语:Quiero pedir una pelota de baloncesto.

3.1.3 语气转换

prompt = f"""
请将以下文本翻译成中文,分别展示成正式与非正式两种语气: 
```Would you like to order a pillow?```
"""
response = get_completion(prompt)
print(response)
正式语气:您是否需要订购一个枕头?
非正式语气:你想要订购一个枕头吗?

3.1.4 综合翻译器

user_messages = [
  "La performance du système est plus lente que d'habitude.",  # System performance is slower than normal         
  "Mi monitor tiene píxeles que no se iluminan.",              # My monitor has pixels that are not lighting
  "Il mio mouse non funziona",                                 # My mouse is not working
  "Mój klawisz Ctrl jest zepsuty",                             # My keyboard has a broken control key
  "我的屏幕在闪烁"                                             # My screen is flashing
]

import time
for issue in user_messages:
    time.sleep(20)
    prompt = f"告诉我以下文本是什么语种,直接输出语种,如法语,无需输出标点符号: ```{issue}```"
    lang = get_completion(prompt)
    print(f"原始消息 ({lang}): {issue}\n")

    prompt = f"""
    将以下消息分别翻译成英文和中文,并写成
    中文翻译:xxx
    英文翻译:yyy
    的格式:
    ```{issue}```
    """
    response = get_completion(prompt)
    print(response, "\n=========================================")
原始消息 (法语): La performance du système est plus lente que d'habitude.

中文翻译:系统性能比平时慢。
英文翻译:The system performance is slower than usual. 
=========================================
原始消息 (西班牙语): Mi monitor tiene píxeles que no se iluminan.

中文翻译:我的显示器有一些像素点不亮。
英文翻译:My monitor has pixels that do not light up. 
=========================================
原始消息 (意大利语): Il mio mouse non funziona

中文翻译:我的鼠标不工作
英文翻译:My mouse is not working 
=========================================
原始消息 (这段文本是波兰语。): Mój klawisz Ctrl jest zepsuty

中文翻译:我的Ctrl键坏了
英文翻译:My Ctrl key is broken 
=========================================
原始消息 (中文): 我的屏幕在闪烁

中文翻译:我的屏幕在闪烁
英文翻译:My screen is flickering. 
=========================================

3.2 风格转换

在写作中,语言语气的选择与受众对象息息相关。比如工作邮件需要使用正式、礼貌的语气和书面词汇;而与朋友的聊天可以使用更轻松、口语化的语气。

prompt = f"""
将以下文本翻译成商务信函的格式: 
```小老弟,我小羊,上回你说咱部门要采购的显示器是多少寸来着?```
"""
response = get_completion(prompt)
print(response)
尊敬的先生/女士,

我是小羊,我希望能够向您确认一下我们部门需要采购的显示器尺寸是多少寸。上次我们交谈时,您提到了这个问题。

期待您的回复。

谢谢!

此致,

小羊

3.3 文本格式转换

实现 JSON 到 HTML、XML、Markdown 等格式的相互转化。

data_json = { "resturant employees" :[ 
    {"name":"Shyam", "email":"shyamjaiswal@gmail.com"},
    {"name":"Bob", "email":"bob32@gmail.com"},
    {"name":"Jai", "email":"jai87@gmail.com"}
]}

prompt = f"""
将以下Python字典从JSON转换为HTML表格,保留表格标题和列名:{data_json}
"""
response = get_completion(prompt)
print(response)
<table>
  <caption>resturant employees</caption>
  <thead>
    <tr>
      <th>name</th>
      <th>email</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Shyam</td>
      <td>shyamjaiswal@gmail.com</td>
    </tr>
    <tr>
      <td>Bob</td>
      <td>bob32@gmail.com</td>
    </tr>
    <tr>
      <td>Jai</td>
      <td>jai87@gmail.com</td>
    </tr>
  </tbody>
</table>

3.4 拼写/语法纠错

利用大语言模型进行自动校对可以极大地降低人工校对的工作量。

text = [ 
  "The girl with the black and white puppies have a ball.",  # The girl has a ball.
  "Yolanda has her notebook.", # ok
  "Its going to be a long day. Does the car need it’s oil changed?",  # Homonyms
  "Their goes my freedom. There going to bring they’re suitcases.",  # Homonyms
  "Your going to need you’re notebook.",  # Homonyms
  "That medicine effects my ability to sleep. Have you heard of the butterfly affect?", # Homonyms
  "This phrase is to cherck chatGPT for spelling abilitty"  # spelling
]

for i in range(len(text)):
    time.sleep(20)
    prompt = f"""请校对并更正以下文本,注意纠正文本保持原始语种,无需输出原始文本。
    如果您没有发现任何错误,请说“未发现错误”。
    
    例如:
    输入:I are happy.
    输出:I am happy.
    ```{text[i]}```"""
    response = get_completion(prompt)
    print(i, response)
0 The girl with the black and white puppies has a ball.
1 Yolanda has her notebook.
2 It's going to be a long day. Does the car need its oil changed?
3 Their goes my freedom. There going to bring their suitcases.
4 You're going to need your notebook.
5 That medicine affects my ability to sleep. Have you heard of the butterfly effect?
6 This phrase is to check chatGPT for spelling ability.

4. 参考

https://datawhalechina.github.io/llm-cookbook/#/

欢迎关注本人,我是喜欢搞事的程序猿; 一起进步,一起学习;

欢迎关注知乎/CSDN:SmallerFL

也欢迎关注我的wx公众号(精选高质量文章):一个比特定乾坤

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/774572.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python学习从0开始——Kaggle实践可视化001

Python学习从0开始——Kaggle实践可视化001 一、创建和加载数据集二、数据预处理1.按name检查&#xff0c;处理重复值&#xff08;查重&#xff09;2.查看存在缺失值的列并处理&#xff08;缺失值处理&#xff09;2.1按行或列查看2.2无法推测的数据2.3可由其它列推测的数据 3.拆…

Python爬取豆瓣电影+数据可视化,爬虫教程!

1. 爬取数据 1.1 导入以下模块 import os import re import time import requests from bs4 import BeautifulSoup from fake_useragent import UserAgent from openpyxl import Workbook, load_workbook1.2 获取每页电影链接 def getonepagelist(url,headers):try:r reque…

Android实现获取本机手机号码

和上次获取设备序列号一样&#xff0c;仍然是通过无障碍服务实现&#xff0c;在之前的代码基础上做了更新。代码和demo如下&#xff1a; package com.zwxuf.lib.devicehelper;import android.accessibilityservice.AccessibilityService; import android.app.Activity; import…

千万不能踏入的渠道管理五大误区!【附策略】

一、引言 在当今激烈的市场竞争环境中&#xff0c;有效的渠道管理是企业获得竞争优势的关键。然而&#xff0c;在实践过程中&#xff0c;不少企业因陷入管理误区而影响了市场拓展和品牌建设。本文旨在揭示渠道管理中常见的五大误区&#xff0c;并提供避免策略&#xff0c;帮助…

现代农业利器:土壤检测仪器的应用与未来

在现代农业发展的浪潮中&#xff0c;土壤检测仪器以其精准、高效的特点&#xff0c;成为了农业生产的得力助手。这些看似不起眼的设备&#xff0c;实际上在保障农产品质量、提高农业生产效率方面发挥着举足轻重的作用。 一、土壤检测仪器&#xff1a;现代农业的“眼睛” 土壤检…

科技云报道:人工智能“顶流”齐聚WAIC 2024,他们都做了什么?

科技云报道原创。 一个由智能驱动的未来世界长啥样&#xff1f; 从完成跨海跨城航线的“空中的士”、全无人驾驶汽车、实现奔跑功能的全尺寸通用人形机器人到百度文心一言、讯飞星火、阿里通义千问、华为盘古、商汤日日新等大模型&#xff0c;从智能制造引领的“灯塔工厂”到…

TTS文本转声音:fish-speech 推理、requests访问接口案例

参考: https://hub.docker.com/r/lengyue233/fish-speech https://speech.fish.audio/inference/#http-api 下载 下载模型: HF_ENDPOINT=https://hf-mirror.com huggingface-cli download fishaudio/fish-speech-1.2 --local-dir checkpoints/fish-speech-1.2下载的内容有…

GoodTask for Mac:优雅高效的任务管理助手

在快节奏的工作生活中&#xff0c;你是否需要一个优雅且高效的任务管理工具来助你一臂之力&#xff1f;GoodTask for Mac正是你的理想选择&#xff01; GoodTask以其简洁直观的界面设计&#xff0c;让你一眼就能看清所有的待办事项。你可以轻松创建任务、设置提醒&#xff0c;…

请查收!模拟电路精选书单一份(可下载)

在电子工程的广阔天地中&#xff0c;模拟电路设计是一门艺术&#xff0c;也是一种科学。它要求设计师不仅要有深厚的理论知识&#xff0c;还要有精湛的实践技能。随着技术的发展&#xff0c;模拟电路设计领域不断涌现新的理论、技术和工具&#xff0c;这使得学习和掌握模拟设计…

虚拟ECU:纯电动汽车发展下的新选择

人类文明的进步是一个不断自我否定、自我超越的过程。21世纪以来&#xff0c;随着科技进步和经济社会发展&#xff0c;能源和交通系统已从独立于自然环境的孤立系统&#xff0c;转变为与自然、技术、社会深度耦合的复杂系统。为实现可持续发展和应对气候变化&#xff0c;世界各…

JDBC 学习笔记+代码整理

Tip Idea自带可视界面&#x1f449;MySQL 图形化界面-CSDN博客 Idea2022无add Framework support选项&#x1f449;最新版IDEA:Add web Framework Support步骤/构建JavaWeb项目步骤_idea add framework support-CSDN博客 基本步骤 1.加载驱动包Driver 2.建立与数据库的连接C…

MYSQL 设置主从同步

效果图 主数据库表数据 从数据库表数据 mysql 数据库配置:主数据库 设置主数据 my.cnf vim /etc/mysql/my.cnf 配置内容 [mysqld] server-id=1 log-bin=mysql-bin # 不需要同步的表 binlog-ignore-db=mysql binlog-ignore-db=sys binlog-ignore-db=performance_schema bi…

Spire.PDF for .NET【文档操作】演示:以特定的缩放比例/百分比打开 PDF 文件

有时&#xff0c;我们可能需要在显示 PDF 文件时更改缩放比例以满足我们的要求。在本文中&#xff0c;我们将演示如何使用 Spire.PDF for .NET 以特定的缩放比例/百分比&#xff08;例如默认值、100% 或任何其他所需的缩放比例&#xff09;打开 PDF 文件。 Spire.PDF for .NET…

TAPD项目管理软件无法与企业微信进行关联

TAPD一段时间未使用后&#xff0c;需要重新启动&#xff0c;此时会出现你的企业微信尚未与TAPD账号关联的提示 解决方案&#xff1a;找到TAPD应用&#xff0c;先删除应用&#xff0c;然后再解除禁用即可

基于python 的动态虚拟主机

将自己电脑上的Python脚本文件上传到虚拟机/var/www/cgi-bin/目录下 [rootlocalhost conf.d]# cd /var/www/cgi-bin/ [rootlocalhost cgi-bin]# rz -E rz waiting to receive.编辑vhost.conf配置文件 [rootlocalhost conf.d]# vim vhost.conf<virtualhost 192.168.209.140…

消息中间件ApacheKafka在windows简单安装

一.背景 之前公司需要API网关管理软件ApacheShenYu&#xff0c;我相信把调用的记录都存到一个数据库。他支持日志推送到kafka&#xff0c;所以&#xff0c;我准备尝试一下通过kafka接收调用的日志信息。第一步&#xff0c;当然是安装kafka了。 二.ApacheKafka的下载 打开下载…

Docker-自定义镜像发布到DockerHub仓库、阿里云仓库

文章目录 推送镜像DockerHub仓库推送镜像阿里云仓库 更多相关内容可查看 推送镜像DockerHub仓库 在服务器中 使用 docker 登录命令 docker login -u 账户 #enter 后输入密码推送镜像到DockerHub docker push 镜像名:tag但个人不建议推送到DockHub上&#xff0c;毕竟不是咱自…

【Python机器学习】处理文本数据——停用词

删除没有信息量的单词有一种方法&#xff0c;就是舍弃那些出现次数太多以至于没有信息量的单词。 有两种主要方法&#xff1a; 1、使用特定语言的停用词&#xff08;stopword&#xff09;列表&#xff1b; 2、舍弃那些出现过于频繁的单词。 scikit-learn的feature_extracti…

gradle构建工具

setting.gradle // settings.gradle rootProject.name my-project // 指定根项目名称include subproject1, subproject2 // 指定子项目名称&#xff0c;可选jar包名称 方式一 jar {archiveBaseName my-application // 设置 JAR 文件的基本名称archiveVersion 1.0 // 设置…

阿里云RDS云数据库库表恢复操作

最近数据库中数据被人误删了,记录一下恢复操作方便以后发生时进行恢复. 1.打开控制台&#xff0c;进入云数据库实例. 2.进入实例后 &#xff0c;点击右侧的备份恢复&#xff0c;然后看一下备份时间点&#xff0c;中间这边都是阿里云自动备份的备份集&#xff0c;基本都是7天一备…