chatglm2-6b-prompt尝试
参考https://cloud.tencent.com/developer/article/2426296
- chatglm2-6b,通过prompt来实现zero-shot/fewshot的自然语言处理任务
import json
import re
import os
from modelscope.utils.constant import Tasks
from modelscope import Model
from modelscope.pipelines import pipeline
model = Model.from_pretrained('ZhipuAI/chatglm2-6b', device_map='auto', revision='v1.0.12')
pipe = pipeline(task=Tasks.chat, model=model)
inputs = {'text':'你好', 'history': []}
result = pipe(inputs)
inputs = {'text':'介绍下清华大学', 'history': result['history']}
result = pipe(inputs)
print(result)
- 文本分类任务
text=f"""
1.加拿大(英语/法语:Canada),首都渥太华,位于北美洲北部。东临大西洋,西濒太平洋,西北部邻美国阿拉斯加州,南接美国本土,北靠北冰洋。气候大部分为亚寒带针叶林气候和湿润大陆性气候,北部极地区域为极地长寒气候。
2.《琅琊榜》是由山东影视传媒集团出品, 由孔笙、李雪执导,海宴担任编剧,胡歌、刘涛、王凯、黄维德、陈龙、丁勇岱、刘敏涛领衔主演,靳东、陈丽娜友情出演,刘奕君、王劲松、张龄心、吴磊、程皓枫、郭晓然、王永泉、高鑫、王鸥、周奇奇、张棪琰、宁文彤主演的古装权谋剧
3.《满江红》是由张艺谋执导,沈腾、易烊千玺、张译、雷佳音、岳云鹏、王佳怡领衔主演,潘斌龙、余皑磊主演,郭京飞、欧豪友情出演,魏翔、张弛、黄炎特别出演,许静雅、蒋鹏宇、林博洋、飞凡、任思诺、陈永胜出演的悬疑喜剧电影。
4.布宜诺斯艾利斯(西班牙语:Buenos Aires,华人常简称为布宜诺斯),是阿根廷共和国(the Republic of Argentina,República Argentina)的首都和最大城市,位于拉普拉塔河南岸、南美洲东南部、河对岸为乌拉圭东岸共和国。
5.张译(原名张毅),1978年2月17日出生于黑龙江省哈尔滨市,中国内地男演员。1997年至2006年服役于北京军区政治部战友话剧团。2005年,在电视剧《民工》中饰演郭振东一角正式开启演艺生涯。2006年,在主演军事励志题材电视剧《士兵突击》中饰演史今一角。
"""
prompt=f"""
识别以下5句话中,每一句话描述的是一个什么类型的物体。
{text}
将结果用数组形式表示,如['答案1','答案2', ..., '答案5'],此处的答案是你刚才识别的那5句话的答案。
"""
inputs = {'text': prompt, 'history': []}
result = pipe(inputs)
print(result['response'])
['地理', '电视剧', '电影', '城市', '演员']
- 文本匹配任务
text=f"""
('如何修改头像', '可以通过上传图片修改头像吗'),
('王者荣耀司马懿连招', '王者荣耀司马懿有什么技巧'),
('王者荣耀司马懿连招', '历史上司马懿真的被诸葛亮空城计骗了吗'),
"""prompt=f"""
你需要识别文本对中的两个句子是否描述的是相似的语言,示例如下:
问题: "('苹果是水果吗', '榴莲是水果吗'), ('小学生有游戏防沉迷系统吗', '我还在上学,打游戏有时间限制吗'), ('怎么做意大利面最好吃', '下雨了去哪买伞')"
答案: ['相似', '相似', '不相似']
上面的问答逻辑为:第一个句子对都是问某个东西是否是水果,所以识别为相似;第二个句子对都与学生玩游戏相关,所以是相似,第三个句子对一个是做饭、一个是买东西,因此不相似。
下面是你需要识别的文本对:
{text}
请以我给出的示例答案的回答方式给出结果,请注意只需要给出['相似/不相似',...]这样的结构
"""
inputs = {'text': prompt, 'history': []}
result = pipe(inputs)
print(result['response'])
['相似', '相似', '不相似']
- 信息抽取任务
class_examples = {'人物': '岳云鹏,本名岳龙刚,1985年4月15日出生于河南省濮阳市南乐县,中国内地相声、影视男演员。2005年,首次登台演出。2012年,主演卢卫国执导的喜剧电影《就是闹着玩的》。2013年在北京举办相声专场。','书籍': '《三体》是刘慈欣创作的长篇科幻小说系列,由《三体》《三体2:黑暗森林》《三体3:死神永生》组成,第一部于2006年5月起在《科幻世界》杂志上连载,第二部于2008年5月首次出版,第三部则于2010年11月出版。','电视剧': '《狂飙》是由中央电视台、爱奇艺出品,留白影视、中国长安出版传媒联合出品,中央政法委宣传教育局、中央政法委政法综治信息中心指导拍摄,徐纪周执导,张译、张颂文、李一桐、张志坚、吴刚领衔主演,倪大红、韩童生、李建义、石兆琪特邀主演,李健、高叶、王骁等主演的反黑刑侦剧。',
}# few-shot examplesie_examples = {'人物': [{'content': '岳云鹏,本名岳龙刚,1985年4月15日出生于河南省濮阳市南乐县,中国内地相声、影视男演员。','answers': {'姓名': ['岳云鹏'],'性别': ['男'],'出生日期': ['1985年4月15日'],'出生地点': ['河南省濮阳市南乐县'],'职业': ['相声演员', '影视演员'],'获得奖项': ['原文中未提及']}}],'书籍': [{'content': '《三体》是刘慈欣创作的长篇科幻小说系列,由《三体》《三体2:黑暗森林》《三体3:死神永生》组成,第一部于2006年5月起在《科幻世界》杂志上连载,第二部于2008年5月首次出版,第三部则于2010年11月出版。','answers': {'书名': ['《三体》'],'作者': ['刘慈欣'],'类型': ['长篇科幻小说'],'发行时间': ['2006年5月','2008年5月','2010年11月'],'定价': ['原文中未提及']}}]
}# 先对句子做分类,再进行信息提取
schema = {'人物': ['姓名', '性别', '出生日期', '出生地点', '职业', '获得奖项'],'书籍': ['作者', '类型', '发行日期', '定价'],'电视剧': ['导演', '演员', '题材', '出品方'],
}class_list = list(schema.keys())CLS_PATTERN = f"“{{}}”是 {class_list} 里的什么类别?"cls_pre_history = [(f"现在你是一个文本分类器,你需要按照要求将我给你的句子分类到:{class_list}类别中。",f"好的。")
]for _type, example in class_examples.items():cls_pre_history.append((f"“{example}”是 {class_list} 里的什么类别?", _type))IE_PATTERN = "{}\n\n提取上述句子中{}类型的实体,并按照JSON格式输出,上述句子中不存在的信息用['原文中未提及']来表示,多个值之间用','分隔。"ie_pre_history = [("现在你需要帮助我完成信息抽取任务,当我给你一个句子时,你需要帮我抽取出句子中三元组,并按照JSON的格式输出,上述句子中没有的信息用['原文中未提及']来表示,多个值之间用','分隔。",'好的,请输入您的句子。')
]for _type, example_list in ie_examples.items():for example in example_list:sentence = example['content']properties_str = ','.join(schema[_type])schema_str_list = f'“{_type}”({properties_str})'sentence_with_ie_prompt = IE_PATTERN.format(sentence, schema_str_list)ie_pre_history.append((f'{sentence_with_ie_prompt}',f"{json.dumps(example['answers'], ensure_ascii=False)}"))
class_examples = {'人物': '岳云鹏,本名岳龙刚,1985年4月15日出生于河南省濮阳市南乐县,中国内地相声、影视男演员。2005年,首次登台演出。2012年,主演卢卫国执导的喜剧电影《就是闹着玩的》。2013年在北京举办相声专场。','书籍': '《三体》是刘慈欣创作的长篇科幻小说系列,由《三体》《三体2:黑暗森林》《三体3:死神永生》组成,第一部于2006年5月起在《科幻世界》杂志上连载,第二部于2008年5月首次出版,第三部则于2010年11月出版。','电视剧': '《狂飙》是由中央电视台、爱奇艺出品,留白影视、中国长安出版传媒联合出品,中央政法委宣传教育局、中央政法委政法综治信息中心指导拍摄,徐纪周执导,张译、张颂文、李一桐、张志坚、吴刚领衔主演,倪大红、韩童生、李建义、石兆琪特邀主演,李健、高叶、王骁等主演的反黑刑侦剧。',
}# few-shot examplesie_examples = {'人物': [{'content': '岳云鹏,本名岳龙刚,1985年4月15日出生于河南省濮阳市南乐县,中国内地相声、影视男演员。','answers': {'姓名': ['岳云鹏'],'性别': ['男'],'出生日期': ['1985年4月15日'],'出生地点': ['河南省濮阳市南乐县'],'职业': ['相声演员', '影视演员'],'获得奖项': ['原文中未提及']}}],'书籍': [{'content': '《三体》是刘慈欣创作的长篇科幻小说系列,由《三体》《三体2:黑暗森林》《三体3:死神永生》组成,第一部于2006年5月起在《科幻世界》杂志上连载,第二部于2008年5月首次出版,第三部则于2010年11月出版。','answers': {'书名': ['《三体》'],'作者': ['刘慈欣'],'类型': ['长篇科幻小说'],'发行时间': ['2006年5月','2008年5月','2010年11月'],'定价': ['原文中未提及']}}]
}# 先对句子做分类,再进行信息提取
schema = {'人物': ['姓名', '性别', '出生日期', '出生地点', '职业', '获得奖项'],'书籍': ['作者', '类型', '发行日期', '定价'],'电视剧': ['导演', '演员', '题材', '出品方'],
}class_list = list(schema.keys())CLS_PATTERN = f"“{{}}”是 {class_list} 里的什么类别?"cls_pre_history = [(f"现在你是一个文本分类器,你需要按照要求将我给你的句子分类到:{class_list}类别中。",f"好的。")
]for _type, example in class_examples.items():cls_pre_history.append((f"“{example}”是 {class_list} 里的什么类别?", _type))IE_PATTERN = "{}\n\n提取上述句子中{}类型的实体,并按照JSON格式输出,上述句子中不存在的信息用['原文中未提及']来表示,多个值之间用','分隔。"ie_pre_history = [("现在你需要帮助我完成信息抽取任务,当我给你一个句子时,你需要帮我抽取出句子中三元组,并按照JSON的格式输出,上述句子中没有的信息用['原文中未提及']来表示,多个值之间用','分隔。",'好的,请输入您的句子。')
]for _type, example_list in ie_examples.items():for example in example_list:sentence = example['content']properties_str = ','.join(schema[_type])schema_str_list = f'“{_type}”({properties_str})'sentence_with_ie_prompt = IE_PATTERN.format(sentence, schema_str_list)ie_pre_history.append((f'{sentence_with_ie_prompt}',f"{json.dumps(example['answers'], ensure_ascii=False)}"))
{"电视剧": {"导演": ["孔笙", "李雪"], "演员": ["胡歌", "刘涛", "王凯", "黄维德", "陈龙", "丁勇岱", "刘敏涛", "靳东", "陈丽娜", "吴磊", "程皓枫", "郭晓然", "王永泉", "高鑫", "王鸥", "周奇奇", "张棪琰", "宁文彤"], "题材": ["古装权谋剧"], "出品方": ["山东影视传媒集团"]}
{"姓名": ["张译"], "性别": ["男"], "出生日期": ["1978年2月17日"], "出生地点": ["黑龙江省哈尔滨市"], "职业": ["中国内地男演员"], "获得奖项": ["原文中未提及"]}
相关文章:
chatglm2-6b-prompt尝试
参考https://cloud.tencent.com/developer/article/2426296 chatglm2-6b,通过prompt来实现zero-shot/fewshot的自然语言处理任务 import json import re import os from modelscope.utils.constant import Tasks from modelscope import Model from modelscope.pi…...
vite+vue3项目初始化搭建
vitevue3项目初始化搭建 "nodejs": v18.19.0 "pnpm": 8.15.0 "vue": v3.4.21 "vite": v5.2.01.创建项目 Vite中文官网 pnpm create vitelatest项目名字:gd_web 选择框架:Vue3 选择语言:JavaScrip…...
使用 Vue3、Node.js、MySQL、Electron 和 Express 实现用户登录、文章管理和截屏功能
在现代 Web 开发中,前后端分离的架构已经成为主流。本文将详细介绍如何使用 Vue3、Node.js、MySQL、Electron 和 Express 实现一个完整的用户登录、文章管理和截屏功能的应用。我们将从项目的初始化开始,逐步实现各个功能模块,并提供详细的代…...

django中日志模块logging的配置和使用
一、文件的配置 settings.py文件中添加LOGGING块的配置,配置如下 # 日志记录 LOGGING {"version": 1,"disable_existing_loggers": False, # 用于确定在应用新的日志配置时是否禁用之前配置的日志器# 格式器"formatters": {"v…...

pyqt/pyside QTableWidget失去焦点后,选中的行仍高亮的显示
正常情况下pyqt/pyside的QTableWidget,点击input或者按钮失去焦点后 行的颜色消失了 如何在失去焦点时保持行的选中颜色,增加下面的代码: # 获取当前表格部件的调色板 p tableWidget.palette()# 获取活跃状态下的高亮颜色和高亮文本颜色&a…...

函数定义、合约与面向对象(以太坊solidity合约)
函数定义、合约与面向对象(以太坊solidity合约) 1-函数定义、构造与多态2-事件日志3-面向对象特征 1-函数定义、构造与多态 创建合约就是创建类,部署合约就是实例化 合约的方法还支持多态 还能使用第三方的库进行开发 整个合约部署后&…...

微服务:nacos
Nacos 由Alibaba推出的集成于SpringCloudAlibaba中的一款开源注册中心框架 主要功能: 注册中心 配置管理 nacos的安装和部署 nacos默认访问端口8848 docker pull nacos/nacos-server:1.2.0 docker run --env MODEstandalone --name nacos --restartalways -d -p 8848:8…...
前端css常用笔记
文章目录 一、样式二、vue笔记2.1、组件之间的通信2.1.1 子组件调用父组件的方法2.1.2 父组件调用子组件的方法2.1.3 孙组件调用祖父组件方法的实现 2.2、使用若依时,node_nodules越来越大的问题2.3、echart笔记 一、样式 1 文字与图标对不齐的解决方法 /**给icon加上这个样式即…...

WINUI或WPF灵活使用样式、控件模板、自定义控件、用户控件
在WINUI与WPF 中,控件模板(ControlTemplate)、样式(Style)、自定义控件(CustomControl)和用户控件(UserControl)都是构建复杂和灵活用户界面的重要工具,但它们…...

如何用EXCEL自动解方程/方程组?利用 矩阵乘法X=A-*B,X=mmult(minverse(A), B)
目录 问题的由来 1 数据 → 模拟分析 → 单变量求解 1.1 找一个单元格填入公式 1.2 功能入口 1.3 选择单变量求解,分别填入内容 1.4 求解 1.5 这个感觉用处不大 2 重点介绍,用EXCEL进行矩阵运算解方程的操作 2.1 运用EXCEL进行矩阵运算&…...

ComfyUI进阶:Comfyroll插件 (二)
前言: 学习ComfyUI是一场持久战,而Comfyroll Studio 是一款功能强大的自定义节点集合,专为 ComfyUI 用户打造,旨在提供更加丰富和专业的图像生成与编辑工具。借助这些节点,用户可以在静态图像的精细调整和动态动画的复…...

Spring Boot集成Activity7实现简单的审批流
由于客户对于系统里的一些新增数据,例如照片墙、照片等,想实现上级逐级审批通过才可见的效果,于是引入了Acitivity7工作流技术来实现,本文是对实现过程的介绍讲解,由于我是中途交接前同事的这块需求,所以具…...
自动驾驶,革了谁的命
概述 从AI 的出现开始,到现在已经慢慢地开始改变着周遭的世界。 从对话聊天,到当前的看图识文,图片转动效等等,慢慢地在与实体结合后,其发挥的威力是巨大的。 科技将会是改变世界的核心驱动力之一,已经深…...

在线实习项目|泰迪智能科技企业级项目学习,暑期大数据人工智能学习
在线实习介绍 实习时间:每个项目周期七周左右 面向对象:大数据、计算机相关专业学生;大三、大四毕业年度学生 在线实习收获 1、获得项目实战技能,积累项目经验 2、获得在线实习证明 项目特点…...

【BUG】已解决:To update, run: python.exe -m pip install --upgrade pip
To update, run: python.exe -m pip install --upgrade pip 目录 To update, run: python.exe -m pip install --upgrade pip 【常见模块错误】 解决办法: 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页,我是博主英杰&…...
Lua 运算符
Lua 运算符 Lua 是一种轻量级的编程语言,广泛用于游戏开发、脚本编写和其他应用程序。它具有一套丰富的运算符,用于执行各种数学和逻辑操作。本文将详细介绍 Lua 中的运算符,包括算术运算符、关系运算符、逻辑运算符和其他特殊运算符。 算术…...

园区道路车辆智能管控视频解决方案,打造安全畅通的园区交通环境
一、背景需求分析 随着企业园区的快速发展和扩张,道路车辆管理成为了保障园区秩序、提升运营效率及确保员工安全的重要任务。针对这一需求,旭帆科技TSINGSEE青犀提出了一种企业园区道路车辆管控的解决方案,通过整合视频监控、智能识别等技术…...

MATLAB R2023b下载安装教程汉化中文版设置
MATLAB R2023b下载安装教程汉化中文版设置 Matlab 是一款功能强大的商业数学软件 Matlab(Matrix Labortory)即矩阵实验室,它在数值计算、数据分析、算法开发、建模与仿真等众多领域都发挥着重要作用。 Matlab 具有以下显著特点和优势&…...

Java二十三种设计模式-工厂方法模式(2/23)
工厂方法模式:设计模式中的瑞士军刀 引言 在软件开发中,工厂方法模式是一种常用的创建型设计模式,它用于处理对象的创建,将对象的实例化推迟到子类中进行。这种模式不仅简化了对象的创建过程,还提高了代码的可维护性…...

【iOS】OC类与对象的本质分析
目录 前言clang常用命令对象本质探索属性的本质对象的内存大小isa 指针探究 前言 OC 代码的底层实现都是 C/C代码,OC 的对象都是基于 C/C 的数据结构实现的,实际 OC 对象的本质就是结构体,那到底是一个怎样的结构体呢? clang常用…...

Linux应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...
web vue 项目 Docker化部署
Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段: 构建阶段(Build Stage):…...

idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...

【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...

【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
leetcodeSQL解题:3564. 季节性销售分析
leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

IT供电系统绝缘监测及故障定位解决方案
随着新能源的快速发展,光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域,IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选,但在长期运行中,例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...