方针

上一节,咱们成功抓取了推特上的”ChatGPT4使用方法”并存入CSV文件。没看过的小伙伴快去回忆下!‍♂️

GPT-4的使用场景和案例:基于Twitter热门推文的分析和中文总结

CSV文件存在Google Drive服务器,每次生成新总结都要跑代码,累死我了! 今天,咱们来试试在Discord机器人中直接获取推文总结,一键轻松拿到!

作用一览无遗:

不多啰嗦,直接上问答!

问答

先让GPT回忆一下代码

要让GPT4照葫芦画瓢,得先给它展现我之前写的代码。代码多得像流水账,先看个图吧!

使用GPT4编程——Discord信息助手

小家伙还算识相,飞速阅读完代码,然后接受了我的应战。

使用GPT4编程——Discord信息助手

增加discord机器人功用

然后给出咱们的要求,仍是老样子,立刻给你说出了个一二三条处理步骤,棒棒哒

使用GPT4编程——Discord信息助手

按它的建议,我试试运转代码。结果呢?报错了!这GPT4的代码也不能全信,想害我! 不过,我也不懈Python啊,就把过错扔回去!

使用GPT4编程——Discord信息助手

这下果然老实了,立刻承认过错,然后给我新的处理方案。抱着再试一试的想法,我又将代码放入colab中履行。我去又给我报错,而我仍是老套路,直接把过错丢给它。

使用GPT4编程——Discord信息助手

ok完美运转!!!

给机器人输入数据

假如咱们看过上一节,就会发现之前GPT给咱们写的获取推文总结功用没有被封装成函数!!!!,那么咱们的机器人怎么调用呢!。身为一个程序员,我自己当然会给他封装一下。可是本着只BB,绝对不自己动手做的原则,我仍是给GPT下达了一个命令,让它锻炼一下给我封装成scrape_and_summarize函数。

使用GPT4编程——Discord信息助手

好家伙封装的还挺快!,那么接下来咱们直接让它将新封装的函数scrape_and_summarize和机器人功用相结合。天然我肯定是不会写的,当然是张嘴要求了啊!

使用GPT4编程——Discord信息助手

然后我愉快的开端履行,然后又给我报错,不过这次咱们熟练了,直接将过错丢给它,让它自己处理。

使用GPT4编程——Discord信息助手

然后咱们将代码放入colab中运转,能够看见咱们的机器人现已成功上线了。

使用GPT4编程——Discord信息助手

优化机器人输出反应

因为获取数据需要进行网络恳求,这就导致scrape_and_summarize函数需要等候很长时间,所以说咱们在输入命令之后,机器人迟迟没有响应。那么我再要求一下GPT给咱们的机器人加个处理提示文本。

使用GPT4编程——Discord信息助手

完好代码

一切代码都是GPT4写的!!!,我仅仅担任出提示

import os
import discord
from discord.ext import commands
import snscrape.modules.twitter as twitter
import pandas as pd
import openai
import logging
from googletrans import Translator
import nest_asyncio
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
openai.api_key = "your openai key"
def scrape_and_summarize():
    query = "chatgpt4 (use OR uses OR using OR example OR examples OR scenario OR scenarios OR application OR applications)"
    results_to_retrieve = 10
    logger.info(f"Searching for '{query}' on Twitter")
    scraper = twitter.TwitterSearchScraper(query)
    tweets = sorted(scraper.get_items(), key=lambda x: x.likeCount + x.quoteCount + x.replyCount, reverse=True)
    translator = Translator()
    tweet_data = []
    for i, tweet in enumerate(tweets[:results_to_retrieve]):
        tweet_url = tweet.url
        tweet_content = tweet.content
        response = openai.Completion.create(
            engine="text-davinci-002",
            prompt=f"Please summarize the following tweet:\n\n{tweet_content}\n\nSummary:",
            max_tokens=30,
            n=1,
            stop=None,
            temperature=0.7,
        )
        summary = response.choices[0].text.strip()
        translated_summary = translator.translate(summary, dest="zh-cn").text
        tweet_data.append((tweet_url, tweet_content, summary, translated_summary))
    return tweet_data
    # df = pd.DataFrame(tweet_data, columns=["Tweet URL", "Tweet Content", "Summary", "Translated Summary (Chinese)"])
    # df.to_csv("tweet_summaries.csv", index=False)
# Discord bot code
TOKEN = "your discord bot key"
intents = discord.Intents.default()
intents.messages = True
intents.guilds = True
intents.reactions = True
intents.message_content = True  # 增加这一行
bot = commands.Bot(command_prefix='/', intents=intents)
@bot.event
async def on_ready():
    print(f'{bot.user} has connected to Discord!')
@bot.command(name='news', help='Returns summaries of the top tweets about ChatGPT-4')
async def news(ctx):
    print("hello bot")
    processing_message = await ctx.send("正在处理您的恳求,请稍候...")
    tweet_summaries = scrape_and_summarize()
    await processing_message.edit(content="处理完成!正在发送推文总结...")
    for url, content, summary, translated_summary in tweet_summaries:
        response = f"**Tweet 地址**: {url}\n  Tweet 总结 **: {translated_summary}\n"
        await ctx.send(response)
    await ctx.send(response)
nest_asyncio.apply()
bot.run(TOKEN)

结束

总而言之,咱们成功地运用了ChatGPT4来升级咱们的Discord机器人,让它能够更便捷地获取推特上关于”ChatGPT4使用方法”的热门推文总结。尽管在过程中遇到了一些小挫折,但咱们一路披荆斩棘,终究达到了方针。

这次探究不仅让咱们深入了解了ChatGPT4的潜力,还提示咱们,人工智能尽管强大,但在实践应用中可能还会遇到应战。作为使用者,咱们需要不断学习和适应,与这个奇特的AI助手共同生长。

在此感谢咱们的支撑与陪伴!假如你喜爱这篇文章,别忘了点个赞、重视咱们,以便及时获取更多精彩内容。同时,欢迎在评论区留下你的宝贵意见和建议,咱们十分期待与咱们互动沟通,共同探讨更多风趣的论题!—— 这一部分我仍是只动了嘴

使用GPT4编程——Discord信息助手