ChatGPT使用教程
对话API
import requests
# https://api2d.com/wechat/recharge
# chatgpt接口地址(国内代理)
url = "https://openai.api2d.net/v1/chat/completions"
headers = {
'Content-Type': 'application/json',
# <-- 把 fkxxxxx 替换成你自己的 Forward Key,注意前面的 Bearer 要保留,并且和 Key 中间有一个空格
'Authorization': 'Bearer 填入key'
}
data = {
"model": "gpt-4-0613", # 模型
# 对话的输入
"messages": [{
"role": "user",
"content": '''You are a student working on the following assignment.
Create an essay based on the following topic in no more than 50 words.
Topic: Car-Free cities.
'''}]
}
response = requests.post(url, headers=headers, json=data)
print("Status Code", response.status_code)
print("JSON Response ", response.json())
嵌入API
import requests
url = "https://openai.api2d.net/v1/embeddings"
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer fkxxxxx' # <-- 把 fkxxxxx 替换成你自己的 Forward Key,注意前面的 Bearer 要保留,并且和 Key 中间有一个空格。
}
data = {
"model": "text-embedding-ada-002",
"input": "一起学习人工智能"
}
response = requests.post(url, headers=headers, json=data)
print("Status Code", response.status_code)
print("JSON Response ", response.json())
ChatGPT使用教程
任务1:初识ChatGPT
任务说明:熟悉ChatGPT的基本使用方法,了解如何与模型进行交互,并生成文本输出。 实践步骤: 通过网页端ChatGPT或ChatGPT API发送prompt,可以尝试不同的prompt,观察模型的输出。 理解ChatGPT的对话机制,尝试在网页端ChatGPT和API进行对话。 将ChatGPT或API的实验过程进行截图,并思考为什么ChatGPT能回答不同的文本。
网页端ChatGPT需自己注册,如果没有账号可以使用下面的ChatGPT API来完成打卡。
import requests
url = "https://openai.api2d.net/v1/chat/completions" # 服务域名+接口
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer fkxxxxx' # <-- 把 fkxxxxx 替换成你自己的 Forward Key,注意前面的 Bearer 要保留,并且和 Key 中间有一个空格。
}
data = {
"model": "gpt-3.5-turbo",
"messages": [{"role": "user", "content": "你好!给我讲个笑话。"}]
}
response = requests.post(url, headers=headers, json=data)
print("Status Code", response.status_code)
print("JSON Response ", response.json())
在访问代理api时,如果出现问题,则建议替换下面的域名:
https://openai.api2d.net 正式接口,分布式部署 https://oa.api2d.net 备用接口,如果上一个无法使用(比如因为域名包含 openai 被屏蔽)可以使用这个 https://oa.api2d.site,https://oa.api2d.online 临时域名,如果前两个都无法访问可以尝试这两个(过期时间 2024-06-15) https://stream.api2d.net 备用接口,如果前两个都无法使用,可以使用这个
任务2:ChatGPT编写正则
任务说明:在ChatGPT中编写和使用正则表达式,以实现文本匹配和模式提取的功能。 待匹配文本:
Enron Dataset: Over half a million anonymized emails from over 100 users. It’s one of the few publically available collections of “real” emails available for study and training sets.
Google Blogger Corpus: Nearly 700,000 blog posts from blogger.com. The meat of the blogs contain commonly occurring English words, at least 200 of them in each entry.
SMS Spam Collection: Excellent dataset focused on spam. Nearly 6000 messages tagged as legitimate or spam messages with a useful subset extracted directly from Grumbletext.
Recommender Systems Datasets: Datasets from a variety of sources, including fitness tracking, video games, song data, and social media. Labels include star ratings, time stamps, social networks, and images.
Project Gutenberg: Extensive collection of book texts. These are public domain and available in a variety of languages, spanning a long period of time.
实践步骤: 编写prompt让ChatGPT写一个能识别首字母大写单词的正则。 编写prompt让ChatGPT写一个能识别首字母大写且字符个数小于10的正则。 编写prompt让ChatGPT写一个能识别单词末尾为标点符号的正则。 上述实验过程进行截图,通过Python代码验证ChatGPT输出正则的有效性。
任务3:ChatGPT自动EDA
任务说明:使用ChatGPT模型对表格数据进行自动EDA,以发现数据中的模式、趋势和特征。 任务数据集:
import pandas as pd
df = pd.read_csv('https://mirror.coggle.club/dataset/affairs.txt')
df.info()
实践步骤: 将数据集关键信息整理为prompt内容,让ChatGPT输出Pandas代码来统计每列缺失值。 编写prompt让ChatGPT输出Pandas代码来统计affairs列的分布并绘制饼图。 编写prompt让ChatGPT输出Pandas代码来统计affairs列在yrs_married下的分布并绘制柱状图。 编写prompt让ChatGPT输出Pandas代码来绘制age列和yrs_married列的散点图。 上述实验过程进行截图,通过Python代码验证ChatGPT输出Python代码的有效性。
任务4:ChatGPT文本分类
任务说明:了解如何使用ChatGPT模型实现文本分类,并将文本数据分配到正确的类别中。 任务训练集:
| label | review |
|---|---|
| 0 | 辣,饭冷啦,都两三小时才送来慢 |
| 0 | 足足等了將近一個半小時,飯也基本不太熱了,因為網上付款了所以吃飯就不退送餐費,所以你們就任意遲到,我說的有錯嗎 |
| 0 | 送餐的师傅,服务质量太差,送过来都已经坨了 |
| 1 | 送的慢了点 |
| 1 | 还行,就是速度好慢,一个多小时 |
| 0 | 好慢,差一点就超时能打五折了 |
| 0 | 皮太厚,不喜欢 |
| 0 | 卷饼味道真的很一般 |
| 0 | 就是太慢了,我12:44才收到,晚了一个小时,饭都凉了。 |
| 0 | 土豆要多煮一下 |
任务测试集:
| label | review |
|---|---|
| 0 | 味道没有传说中好 |
| 0 | 太糟了。等了两个小时,牛肉我吃的快吐了,再也不可能第二次 |
| 1 | 微辣一点都不辣啊 |
| 1 | 定很多次啦!菜很好吃!也很及时! |
| 0 | 太慢了、恶死了 |
实践步骤: 在不使用训练集的情况下,编写prompt让ChatGPT对于输入的文本进行分类,需要支持输入5条文本一次回答得到所有类别结果,且分类结果为0或1。 在使用训练集的情况下,编写prompt让ChatGPT对于输入的文本进行分类,需要支持输入5条文本一次回答得到所有类别结果,且分类结果为0或1。 上述实验过程进行截图,哪种方法可以得到更加有效的结果,为什么?
任务5:ChatGPT实体抽取
任务说明:学习如何使用ChatGPT模型实现实体抽取,并从文本中准确地抽取出实体信息。 待处理文本:
山药去皮洗净,切成小丁,用水浸泡,避免氧化变色。豌豆剥好,冲洗干净。胡萝卜去皮洗净,切成小丁。葱姜末、小米椒碎准备好。
锅内加水,煮开后放入少许盐,倒入豌豆,煮几分钟,至豌豆断生,煮好后捞出沥干水分。
另起锅加油,烧热后倒入姜末、小米椒碎爆锅,再倒入胡萝卜、山药翻炒,炒两分钟。
最后倒入豌豆翻炒均匀,再加入盐、鸡精、葱末翻炒几下,就可以出锅了,很好吃下饭香,快尝尝吧。
实践步骤: 编写prompt让ChatGPT识别文本中的食物。 编写prompt让ChatGPT识别文本中的时间。 编写prompt让ChatGPT识别文本中的动作。 上述实验过程进行截图,人工验证抽取结果的有效性。
任务6:ChatGPT关系抽取
任务说明:将学习如何使用ChatGPT模型实现关系抽取,并从文本中准确地抽取出实体之间的关系信息。 待处理文本:
王小蒙的豆腐厂上线,每天忙里忙外,不得清闲。谢永强则专注自己的果园,和小蒙几天都见不上一面。两个孩子忙事业始终推迟婚期,急坏永强的父亲谢广坤。
赵玉田和刘英结婚后,开始忙于花圃的经营。来村中实习的女大学生陈艳南吸引了赵玉田的注意,刘英大吃其醋,无事忙刘能对女婿的做法也颇为不满。
香秀迎来了新同事王天来,李大国担心嫉妒,从中作梗。王天来单恋陈艳南,又和赵玉田矛盾不断。
长贵一方面想吸引王大拿来村里投资,一方面又怕谢大脚被大拿抢走,他和大脚之间若即若离,忽冷忽热,闹出不少笑话。
实践步骤:
编写prompt让ChatGPT识别文本中的人名和两者之间的关系。 编写prompt让ChatGPT识别文本中有夫妻关系的人名和关系。 编写prompt让ChatGPT识别文本中与香秀相关的人名和关系。 上述实验过程进行截图,人工验证抽取结果的有效性。 要求输出格式:
实体A - 关系1 - 实体B
实体B - 关系2 - 实体C
任务7:ChatGPT渲染表格
任务说明:使用ChatGPT模型来生成和渲染表格,以便将数据以表格形式展示。 待处理文本:
precision recall f1-score support
class 0 0.50 1.00 0.67 1
class 1 0.00 0.00 0.00 1
class 2 1.00 0.67 0.80 3
accuracy 0.60 5
macro avg 0.50 0.56 0.49 5
weighted avg 0.70 0.60 0.61 5
实践步骤:编写prompt让ChatGPT将数据集处理为如下格式,要求prompt越短越好。
| | F1 | Recall |
| ------- | ----- | ------ |
| class 2 | 0.800 | 0.670 |
| class 1 | 0.000 | 0.000 |
| class 0 | 0.670 | 1.000 |
任务8:ChatGPT文本匹配
任务说明:使用ChatGPT的嵌入API,您可以将文本转换为嵌入向量,然后计算向量之间的相似度来实现文本匹配。 待处理数据集:
| 文本1 | 文本2 | 标签 |
|---|---|---|
| 魔兽世界坐骑去哪买 | 奥比岛在哪有皇室舞会的邀请函? | 0 |
| 在淘宝去哪里充值好 | 在淘宝里怎么买火车票,哪里有 | 0 |
| 鱼不可以和什么蔬菜一起吃 | 鱼不能和什么药物一起吃 | 0 |
| 读音是什么?怎么组词 | 熙的读音和组词是什么? | 1 |
| 七夕到了,单身该怎么过啊? | 七夕单身的人怎么过? | 1 |
| 什么品牌的智能手机好用 | 现在什么牌子的智能手机好用,又便宜呀 | 1 |
| 一个人怎么过七夕? | 七夕一个人怎么过 | 1 |
import requests
url = "https://openai.api2d.net/v1/embeddings"
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer fkxxxxx' # <-- 把 fkxxxxx 替换成你自己的 Forward Key,注意前面的 Bearer 要保留,并且和 Key 中间有一个空格。
}
data = {
"model": "text-embedding-ada-002",
"input": "Coggle数据科学"
}
response = requests.post(url, headers=headers, json=data)
print("Status Code", response.status_code)
print("JSON Response ", response.json())
实践步骤: 使用BERT对上面文本进行编码,然后计算每个样本句子相似度与标签的相关性。 使用ChatGPT对上面文本进行编码,然后计算每个样本句子相似度与标签的相关性。 上述实验过程进行截图,对比两种方法的有效性。
import pandas as pd
import matplotlib.pyplot as plt
# 读取数据
df = pd.read_csv('https://mirror.coggle.club/dataset/affairs.txt')
# 统计affairs列的分布
affairs_distribution = df['affairs'].value_counts()
# 绘制饼图
plt.figure(figsize=(8, 8))
plt.pie(affairs_distribution, labels=affairs_distribution.index, autopct='%1.1f%%', startangle=140)
plt.title('Distribution of Affairs')
plt.show()# 学习大模型 & 讨论Kaggle #
△长按添加竞赛小助手 每天大模型、算法竞赛、干货资讯
与 36000+来自竞赛爱好者一起交流
文章转载自Coggle数据科学,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。






