ChatGPT 的 18 种玩法,你还不会用吗?

你确定,你会使用 ChatGPT 了吗?

今天给大家整理了 18 种 ChatGPT 的用法,看看有哪些方法是你能得上的。

用之前我们可以打开R5Ai平台,可以免费使用目前所有的大模型

地址:R5Ai.com

语法更正

用途:文章、论文等润色。

图片

文本翻译

用途:日常学习、商务翻译等。

图片

语言转换

Python-->JAVA

用途:工作用途,不同语言工程师之间的合作,更加方便。

复制代码
cpp 复制代码
import numpy as np

import plotly.express as px


def thresholding_algo(y, lag, threshold):

    """

    :param y: 输入列表

    :param lag: 滑动窗口大小

    :param threshold: 调节系数,用于调节容忍范围的大小。

    :return:

    """

    # signals:信号列表

    signals = np.zeros(len(y))

    avgFilter = np.zeros(len(y))


    # 初始化平均值列表、差值列表

    avgFilter[lag - 1] = np.mean(y[0:lag])

    dif_li = [0] * len(y)


    for i in range(lag, len(y)):

        if i < len(y) - lag - 30:

            for j in range(i + 11, len(y)):

                if y[j] >= y[i - 1]:

                    break

            if j >= len(y) - 30:

                back = y[i - 1]

            else:

                back = np.mean(y[j + 11:j + 20 + lag])

        else:

            back = y[i - 1]


        # 前后均值差值计算

        tmp = abs(back - avgFilter[i - 1])

        dif = (tmp if tmp > 1 else 1)


        if abs(y[i] - avgFilter[i - 1]) > dif * threshold:

            signals[i] = (1 if y[i] > avgFilter[i - 1] else -1)

            avgFilter[i] = np.mean(y[(i - lag):i])

            y[i] = avgFilter[i - 1]

        else:

            signals[i] = 0

            avgFilter[i] = np.mean(y[(i - lag):i])


        dif_li[i] = dif


    return dict(signals=np.asarray(signals),

                avgFilter=np.asarray(avgFilter),

                y=np.asarray(y),

                dif=np.asarray(dif_li),

                )

图片

复制代码
cpp 复制代码
public static Map<String, double[]> thresholding_algo(double[] y, int lag, double threshold) {


    double[] signals = new double[y.length];

    double[] avgFilter = new double[y.length];

    Arrays.fill(avgFilter, 0.0);


    avgFilter[lag - 1] = mean(Arrays.copyOfRange(y, 0, lag));

    double[] dif_li = new double[y.length];

    Arrays.fill(dif_li, 0.0);


    for (int i = lag; i < y.length; i++) {

        int j;

        if (i < y.length - lag - 30) {

            for (j = i + 11; j < y.length; j++) {

                if (y[j] >= y[i - 1]) {

                    break;

                }

            }

            double back;

            if (j >= y.length - 30) {

                back = y[i - 1];

            } else {

                back = mean(Arrays.copyOfRange(y, j + 11, j + 20 + lag));

            }

        } else {

            back = y[i - 1];

        }


        double tmp = Math.abs(back - avgFilter[i - 1]);

        double dif = tmp > 1 ? tmp : 1;


        if (Math.abs(y[i] - avgFilter[i - 1]) > dif * threshold) {

            signals[i] = y[i] > avgFilter[i - 1] ? 1 : -1;

            avgFilter[i] = mean(Arrays.copyOfRange(y, i - lag, i));

            y[i] = avgFilter[i - 1];

        } else {

            signals[i] = 0;

            avgFilter[i] = mean(Arrays.copyOfRange(y, i - lag, i));

        }


        dif_li[i] = dif;

    }


    Map<String, double[]> result = new HashMap<>();

    result.put("signals", signals);

    result.put("avgFilter", avgFilter);

    result.put("y", y);

    result.put("dif", dif_li);


    return result;

}


private static double mean(double[] array) {

    double sum = 0.0;

    for (double d : array) {

        sum += d;

    }

    return sum / array.length;

}

代码解释-1

用途:当我们来到一家新的公司,发现前任工程师留下了一摊谁都看不懂的代码,这时候,如果有个人能帮我们解释一下这些代码是什么意思,那简直不要太开心。

图片

复制代码
cpp 复制代码
def Fusion_algorithm(y_list):

    """

    最终的融合算法

    1、第一次遍历列表: 处理掉小于上一个值的点,使其等于上一个值。

    2、第二次使用z-score来处理异常点:一种基于统计方法的时序异常检测算法借鉴了一些经典的统计方法,比如Z-score和移动平均线

    该算法将时间序列中的每个数据点都看作是来自一个正态分布,通过计算每个数据点与其临接数据点的平均值和标准差,可以获得Z-score

    并将其用于检测异常值,将z-score大于3的数据点视为异常值,缺点:如果异常点太多,则该算法的准确性较差。

    3、

    :param y_list: 传入需要处理的时间序列

    :return:

    """

    # 第一次处理

    for i in range(1, len(y_list)):

        difference = y_list[i] - y_list[i - 1]

        if difference <= 0:

            y_list[i] = y_list[i - 1]

        # 基于突变检测的方法:如果一个数据点的值与前一个数据点的值之间的差异超过某个阈值,

        # 则该数据点可能是一个突变的异常点。这种方法需要使用一些突变检测算法,如Z-score突变检测、CUSUM(Cumulative Sum)

        # else:

        #     if abs(difference) > 2 * np.mean(y_list[:i]):

        #         y_list[i] = y_list[i - 1]


    # 第二次处理

    # 计算每个点的移动平均值和标准差

    ma = np.mean(y_list)

    # std = np.std(np.array(y_list))

    std = np.std(y_list)

    # 计算Z-score

    z_score = [(x - ma) / std for x in y_list]

    # 检测异常值

    for i in range(len(y_list)):

        # 如果z-score大于3,则为异常点,去除

        if z_score[i] > 3:

            print(y_list[i])

            y_list[i] = y_list[i - 1]


    return y_list

图片

代码解释-2

备注:上一个代码解释,我们可以看到,答案或许受到了代码中注释的影响,我们删掉注释,再来一次。对于解释中一些不懂的点,我们可以连续追问!

图片

复制代码
cpp 复制代码
import numpy as np

from sklearn.ensemble import IsolationForest

import plotly.express as px

import matplotlib.pyplot as plt

from sklearn.cluster import KMeans

import json


def Fusion_algorithm(y_list):

    for i in range(1, len(y_list)):

        difference = y_list[i] - y_list[i - 1]

        if difference <= 0:

            y_list[i] = y_list[i - 1]

    

        # else:

        #     if abs(difference) > 2 * np.mean(y_list[:i]):

        #         y_list[i] = y_list[i - 1]



    ma = np.mean(y_list)

    std = np.std(y_list)

    z_score = [(x - ma) / std for x in y_list]

    for i in range(len(y_list)):

        if z_score[i] > 3:

            print(y_list[i])

            y_list[i] = y_list[i - 1]


    return y_list

图片

图片

修复代码错误

用途:写完一段代码后发现有错误?让chatGPT来帮你!

图片

复制代码
cpp 复制代码
# Buggy Python

import Random

a = random.randint(1,12)

b = random.randint(1,12)

for i in range(10):

    question = "What is "+a+" x "+b+"? "

    answer = input(question)

    if answer = a*b

        print (Well done!)

    else:

        print("No.")

图片

作为百科全书

用途:chatGPT可以解释你所有的问题!但是列出小说这个功能有些拉跨,经过测试只有科幻小说列的还可以,其他类型不太行,可能chatgpt训练工程师是个科幻迷!

图片

信息提取

用途:作为自然语言处理界的大模型,怎么能少得了信息提取呢?

图片

好友聊天

用途:输入对方性格模拟聊天,这方面功能不太完善,可能有新鲜玩法我还没有挖掘出来。

图片

图片

创意生成器

用途:是不是常常会在创新上遇到思维瓶颈不知道怎么做?不要担心,让chatGPT帮你生成创意!

VR和密室结合

图片

再结合AR

图片

采访问题

用途:可能您是一个媒体工作者,采访问题不知道怎么写?chatGPT可以帮您解决。

采访问题清单

图片

采访问题清单并给出相应答案

图片

论文大纲

用途:这个功能对于研究生简直不要太爽了,一直在郁闷大纲怎么写,直接列出来大纲简直帮了我天大的忙!对于大纲中不理解的点,直接要求chatGPT给出进一步解释。代码也可以有!那一章的内容不太会写,直接让chatGPT安排,这样,一篇论文很快就写出来啦!

创建论文大纲

图片

解释大纲内容

图片

复制代码
cpp 复制代码
class PBA(nn.Module):

    def __init__(self, PerformanceThreshold, DistributionType, AttentionWeightRange):

        super(PBA, self).__init__()

        self.PerformanceThreshold = PerformanceThreshold

        self.DistributionType = DistributionType

        self.AttentionWeightRange = AttentionWeightRange

        

    def forward(self, input, performance_scores):

        # 计算注意力分数

        attention_scores = []

        for i in range(len(input)):

            if performance_scores[i] > self.PerformanceThreshold:

                attention_scores.append(performance_scores[i])

            else:

                attention_scores.append(0.0)

                

        # 将性能分数映射到注意力权重

        if self.DistributionType == "softmax":

            attention_weights = F.softmax(torch.tensor(attention_scores), dim=0)

        elif self.DistributionType == "sigmoid":

            attention_weights = torch.sigmoid(torch.tensor(attention_scores))

        else:

            raise ValueError("Unknown distribution type: {}".format(self.DistributionType))

        

        # 缩放注意力权重到指定范围

        attention_weights = attention_weights * (self.AttentionWeightRange[1] - self.AttentionWeightRange[0]) + self.AttentionWeightRange[0]

        

        # 计算加权输入

        weighted_input = torch.mul(input, attention_weights.unsqueeze(1).expand_as(input))

        output = torch.sum(weighted_input, dim=0)

        

        return output

故事创作

用途:这个功能真的太太太棒了,以后我自己列提纲出来就可以写小说啦!

爱情故事

图片

恐怖故事

图片

图片

问题类比

用途:当你想要做一个比喻时,这是一个很棒的功能。

图片

创建SQL需求

用途:写SQL有时候挺头疼的,想好久想不起来。

图片

情感分析

用途:这个功能让我想起来在之前公司做的情感分析任务了。

图片

将产品描述转变为广告

用途:这个功能对于商家来说太棒了。

图片

关键字提取

用途:NLP任务的重要作用,关键字提取!

图片

闲聊机器人

用途:这个不多说了,用来闲聊体验感真的很不错。

图片

图片

总结

我觉得角色扮演挺有意思的,对话前加一句:假如你是 xxx。

现在有一些小程序,让AI扮演一些角色对话,就是用这种方法实现的。

相关推荐
好奇龙猫3 分钟前
【学习AI-相关路程-mnist手写数字分类-win-硬件:windows-自我学习AI-实验步骤-全连接神经网络(BPnetwork)-操作流程(3) 】
人工智能·算法
沉下心来学鲁班17 分钟前
复现LLM:带你从零认识语言模型
人工智能·语言模型
数据猎手小k18 分钟前
AndroidLab:一个系统化的Android代理框架,包含操作环境和可复现的基准测试,支持大型语言模型和多模态模型。
android·人工智能·机器学习·语言模型
YRr YRr27 分钟前
深度学习:循环神经网络(RNN)详解
人工智能·rnn·深度学习
sp_fyf_202438 分钟前
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-11-01
人工智能·深度学习·神经网络·算法·机器学习·语言模型·数据挖掘
多吃轻食43 分钟前
大模型微调技术 --> 脉络
人工智能·深度学习·神经网络·自然语言处理·embedding
北京搜维尔科技有限公司1 小时前
搜维尔科技:【应用】Xsens在荷兰车辆管理局人体工程学评估中的应用
人工智能·安全
说私域1 小时前
基于开源 AI 智能名片 S2B2C 商城小程序的视频号交易小程序优化研究
人工智能·小程序·零售
YRr YRr1 小时前
深度学习:Transformer Decoder详解
人工智能·深度学习·transformer
知来者逆2 小时前
研究大语言模型在心理保健智能顾问的有效性和挑战
人工智能·神经网络·机器学习·语言模型·自然语言处理