chatgpt编写一个脚本的使用感受

chatgpt确实很牛

 其中调用了everything,它使用了一个命令行接口程序es.exe 我也是第一次看到。

当时还告诉chatgpt这个es程序不存在,结果chatgpt很谦虚的认可了我的说法,换用了everything.exe,事后看我觉得它给我带来的真的是震撼。

还有就是,我会问刚给我的代码,哪些是怎么回事,居然一一给我解答了。

贴一下需求先

帮我编写一个批处理
备注:每一步执行后,请增加一个pause暂停便于观察,批处理每一步显示全部为打开,编码请支持中文显示
步骤1.定义一个名为“repairDir”常量,常量内容是当前目录
步骤2.从repairDir目录中随机取出一个文件
步骤3.将该文件名通过调用Everything进行搜索
步骤4.读取搜索结果文件并查找与“repairDir”常量完全重复的文件
步骤5.删除“repairDir”中完全重复的文件

贴一下之前的代码吧,结束

@echo off
chcp 65001

REM 步骤1.定义一个名为“repairDir”常量,常量内容是当前目录
set "repairDir=%cd%"
set file_count=1
echo %repairDir%
::pause

:next_file
file_count = file_count + 1
REM 步骤2.从repairDir中随机取出一个文件
setlocal enabledelayedexpansion
set /a count=0
for /f "delims=" %%F in ('dir /b "!repairDir!\*.jpg"') do (
    set /a count+=1
    set "file[!count!]=%%F"
)

echo 共%count%个文件

set /a "randNum=(%random%*count/32768)+1"

echo 随机数为%randNum%

set "randFile=!file[%randNum%]!"
echo 随机选择的文件为: !randFile!
::pause

REM 步骤3.将该文件名通过调用Everything进行搜索
set "searchStr=!randFile!"
echo 搜索关键词: !searchStr!


set "Everything_path=C:\Progra~1\Everything\es.exe"  ::将该路径替换为实际的Everything.exe路径
%Everything_path% -s %searchStr% -p "F:\" -export-txt result.txt

::pause

REM 步骤4.读取搜索结果文件并查找与“repairDir”常量完全重复的文件
set "searchResult=result.txt"
echo ************************开始匹配******************************
::pause 
set "everythingResultPath=result.txt"  :: Everything搜索结果保存路径
set "duplicateFile="
for /f "usebackq delims=" %%a in ("%everythingResultPath%") do (
    set "fileName=%%~nxa"
    set "filePath=%%~dpa"
    echo %repairDir%
    echo "!filePath!" !fileName! 
    rem if /i "%repairDir%"=="!filePath!"
    if /i "!fileName!" neq "%~nx0" set "duplicateFile=%%~a"
)
::pause

REM 步骤5.删除“repairDir”中完全重复的文件
setlocal enabledelayedexpansion
echo off
if defined duplicateFile (
    echo 由于找到一个"%duplicateFile%
    echo 确认下一步删除随机出来的文件:%randFile%
    ::pause
    del /f "%randFile%"
) else (
    echo 没有找到与%randFile%完全重复的文件
    echo 没有找到重复文件
)
echo 第%file_count%次循环
if %file_count% LEQ 100 (goto :next_file)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 使用 Python 写一个基于 GPT-2 模型的聊天机器人需要几个步骤: 1. 安装依赖库,包括 transformers 和 torch。 2. 下载并加载预训练模型,可以使用 transformers 库中的 `AutoModelWithLMHead` 类。 3. 定义输入和输出的格式。 4. 定义生成回答的函数,输入上下文和生成的长度,输出回答。 5. 在主函数中循环获取用户输入并生成回答。 示例代码如下: ```python import torch from transformers import AutoModelWithLMHead, AutoTokenizer # 加载预训练模型 model = AutoModelWithLMHead.from_pretrained("microsoft/DialoGPT-medium") tokenizer = AutoTokenizer.from_pretrained("microsoft/DialoGPT-medium") def generate_answer(prompt, model, tokenizer, max_length=2048): # 将输入转化为 token 序列 input_ids = tokenizer.encode(prompt, return_tensors="pt") # 生成回答 answer = model.generate(input_ids, max_length=max_length) # 将 token 序列转化为文本 answer_text = tokenizer.decode(answer[0], skip_special_tokens=True) return answer_text # 主函数 while True: prompt = input("User: ") answer = generate_answer(prompt, model, tokenizer) print("Bot:", answer) ``` 注意, 由于GPT-2模型很大,训练很慢,且运行起来也很大,我选择的是 DialoGPT-medium, 这种方式常用于语言交互。 如果你想使用其他的预训练模型,可以更改 `microsoft/DialoGPT-medium` 为其他的预训练 ### 回答2: ChatGPT是由OpenAI开发的一款用于对话生成的人工智能模型。使用Python编写ChatGPT可以基于该模型进行对话,以下是实现ChatGPT的步骤: 1. 安装依赖库:首先,需要在Python环境中安装相关的依赖库。使用pip命令安装transformers和torch库。 2. 导入所需库:在Python脚本中导入transformers库的GPTJForCausalLM类和其它必要的模块。同时导入Tokenizer类用于将文本转换为模型可以理解的token序列。 3. 加载ChatGPT模型:通过调用GPTJForCausalLM类加载ChatGPT模型,并将其保存为变量model。 4. 加载Tokenizer:创建一个Tokenizer类的实例tokenizer,用于将用户输入的文本转换为模型需要的输入格式。 5. 定义对话循环:在循环中接收用户的输入,并将其转换为模型需要的输入格式。 6. 生成回复:调用model的generate方法,将用户输入的文本转换为模型的输入,然后利用模型生成对应的回复。 7. 打印回复:将生成的回复文本打印输出。 8. 终止对话:设置一个终止条件,比如用户输入"退出"等特定的关键词时,退出对话循环。 通过以上步骤,就可以使用Python编写一个ChatGPT脚本,实现基本的对话功能。需要注意的是,在实际应用中,可以对模型进行更多的调优和细化,以提高对话的质量和准确性。同时,还可以通过增加语境、添加对话历史等方式进一步改进模型的应用效果。 ### 回答3: ChatGPT一个基于机器学习的聊天机器人,可以用Python编写。在构建ChatGPT之前,我们需要一些基本的准备工作。 首先,我们需要一个大规模的文本数据集来训练ChatGPT,可以使用互联网上的对话数据集或者自己创建一个。确保数据集包含了广泛的主题和多样的对话类型,以提高ChatGPT的表现。 其次,我们需要使用Python中的自然语言处理(NLP)库来处理和清洗我们的对话数据集。这些库包括NLTK、spaCy或者gensim等。我们可以使用这些库来分词、去停用词、进行词性标注等处理,以准备好数据集。 接下来,我们需要选择一个机器学习模型来训练ChatGPT。一种常用的模型是循环神经网络(RNN),例如LSTM或GRU。我们可以使用Python中的深度学习库,如TensorFlow或PyTorch,来构建和训练这些模型。 在训练ChatGPT之前,我们需要将对话数据集划分为训练集和验证集。训练集用于训练模型的参数,验证集用于调整模型的超参数和进行性能评估。 训练ChatGPT时,我们可以使用迭代的方式,每次将一个对话样本输入模型,并根据模型的输出进行损失计算和参数更新。我们可以使用交叉熵损失函数,以及一些优化算法,如随机梯度下降(SGD)或Adam,来训练我们的模型。 训练完成后,我们可以使用ChatGPT来进行对话生成。输入一个用户的问题或回复,ChatGPT将生成一个响应。我们可以用一些策略来提高ChatGPT的生成质量,比如采样技术、集束搜索或者使用外部知识库。 最后,我们可以通过与真实人类对话或者进行自动评估来评估ChatGPT的性能。如果未达到预期,我们可以调整训练数据、模型架构或超参数,并进行重新训练。 总之,使用Python编写一个ChatGPT涉及到数据处理、模型构建、训练和评估等多个步骤。通过不断的实践和改进,我们可以构建一个高质量的ChatGPT,用于与用户进行交互式的对话。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CDialog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值