003- AutoCoder 使用Web版大模型,性感的Human As Model 模式

这是下面这篇文章的继续。

002- 用 AutoCoder 添加和修改代码

前面我们提到,如何解决你没有API版大模型,或者你的API版大模型太弱,而你只有Web版本的诸如 Kimi/GPT4 的情况下,改如何让AutoCoder帮助你完成编程?

我们有两个办法,第一个是去掉 execute/auto_merge 两个参数。这个时候你可以在 target_file 里找到你的prompt,拖拽到 Web版里就行。生成的代码,你基本上可以直接复制黏贴过来。

但是,你可能希望比如自动合并等环节还是让 AutoCoder做掉,该怎么办呢?这里我们有一个新参数叫 human_as_model。我们来看看怎么用:

source_dir: /tmp/t-py
target_file: /home/winubuntu/projects/ByzerRawCopilot/output.txt 


model: qianwen_chat
model_max_length: 2000
model_max_input_length: 6000
anti_quota_limit: 5


search_engine: bing
search_engine_token: ENV {{BING_SEARCH_TOKEN}}


## execute the prompt generated by auto-coder
execute: true
## extract the code from the prompt generated by auto-coder 
## and overwrite the source code
auto_merge: true


project_type: py


human_as_model: true


query: >
  在 read_root 方法前新添加一个方法,
  对应的rest 路径为 /hello, 
  输出返回值为  "world"


这里相比以前,就多了一个 human_as_model 参数,我们把他设置为 true。现在我们希望添加一个新的http 接口。执行下我们的需求:

auto-coder --file ./examples/from-zero-to-hero/003_human_as_model.yml

这个时候终端会自动进入交互模式:

12a236d7439425db817d2bf747de2ca4.png

他提示你,他已经把问题保存到了 output.txt 文件里了,你来回答下这个问题。我这个时候把问题贴给 Claude:

a8ea08234d1a743ff54550271439a6cf.png

Calude 生成了下面的代码:

a69d5d108c8effd00248f71e568948f9.png

现在我们复制下,注意要复制整个回复,而不是复制代码,复制完成后是这样子的:

5fcd9507de0107586784a1eb4d00085e.png

在最后EOF 表示你黏贴完了,再按回车。

这个时候你再打开 server.py 文件,内容已经更新了:

d9f5a3037bd292051bf4eaeedc453fd1.png

我们新增了一个新的接口。

当你的项目完成度越高,模型的生成能力也会越强,因为有更多的新,从而可以直接帮你完成业务代码的生成。

我们也可以看到,单次需求不要太大,否则会导致结果不可控。未来开发代码,会是这么一个流程:

af20c85f01273378d3510db5317b45e7.png

每个需求都是一段文本,每个人都看得懂。做了多少变更,每个变更是什么,基本上都文本化了,对于产品,或者研发而言都是很大的利好。

同时配合 Git 的版本管理,保证AutoCoder的安全性,通过 Test 测试集,保证 AutoCoder的正确性。

下期,我们来介绍下,如何引入文档和搜索引擎,让AutoCoder 在阅读你已经写好的代码同时,再参考文档和自己去做搜索,来完成最终需求的代码编写。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/486130.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024,淘天六大升级,电商人都准备好了吗?|淘天商品API数据采集接口

电商进入存量时代, 淘天仍是电商重心和基本盘 我们说现在的电商仍有红利,只是竞争愈发激烈,从增量时代发展到存量时代。 进入存量竞争时代,全平台布局已成行业共识。 电商淘天官方订单及商品详情API数据采集接口 但无论如何&…

删除数组中的指定元素(了解如何删除数组中的指定元素,并返回一个新的数组,看这一篇就足够了!)

前言:有时候我们会遇到要在数组中删除指定元素,但是不能创建新的数组,那么这个时候应该如何操作呢? ✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客 废话不多讲,让我们…

Go——指针和内存逃逸

区别于C/C中的指针,Go语言中的指针不能进行偏移和运算,是安全指针。 要搞明白Go语言中的指针概念需要先知道3个概念:指针地址,指针类型和指针取值。 一. Go语言的指针 Go语言中的函数传参都是值拷贝,当我们想修改某个…

页面router路由设计

Vue命名视图 命名视图 | Vue Router 如果要在 如何要在main区域里使用路由的话,整体区域是Layout,内涵Header和Nav以及Main path: /index,name: index,component: Layout, 若要只修改main区域的话,则取要加上v-if判断,来确实是…

Redis I/O多路复用

I/O多路复用 Redis的I/o多路复用中,将多个连接放到I/O复用程序中,这个复用程序具体是什么,是Redis的主线程吗 在Redis的I/O多路复用机制中,“复用程序”实际上指的是操作系统提供的系统调用接口,如Linux下的epoll、sel…

【办公类-16-07-07】“2023下学期 中班户外游戏2(有场地和无场地版,每天不同场地)”(python 排班表系列)

作品展示 背景需求: 2024年2月教务组发放的是“每周五天内容相同,两周10天内容相同”的户外游戏安排 【办公类-16-07-05】合并版“2023下学期 大班户外游戏(有场地和无场地版,两周一次)”(python 排班表系…

论文导读 | 漫谈图神经网络

本文主要介绍图神经网络相关内容,包括图神经网络的基本结构以及近期研究进展。 背景 在实际生活中,许多数据都可以用图的形式表达,比如社交网络、分子模型、知识图谱、计算机网络等。图深度学习旨在,显式利用这些数据中的拓扑结…

【VALL-E-01】环境搭建

本系列文章系本人知乎账号迁移 本文系个人知乎专栏文章迁移 VALL-E 网络是GPT-SOVITS很重要的参考 知乎专栏地址: 语音生成专栏 相关文章链接: 【VALL-E-01】环境搭建 【VALL-E-02】核心原理 1、环境包使用 从效果看没有GPT-SOVITS 来的好 环境安装…

C#宿舍信息管理系统

简介 功能 1.发布公告 2.地理信息与天气信息的弹窗 3.学生信息的增删改查 4.宿舍信息的增删改查 5.管理员信息的增删改查 6.学生对宿舍物品的报修与核实 7.学生提交请假与销假 8.管理员对保修的审批 9.管理员对请假的审批 技术 1.采用C#\Winform开发的C\S系统 2.采用MD5对数据…

Java异常类型及异常处理方式

本章学习内容:使用异常处理机制,对程序运行过程中出现的异常情况进行捕捉并处理. 目录 📌 Java异常概述 📌 Java异常体系结构 📌 常见的异常 📌 异常处理 📌 Java异常概述 ○ 异常的概念&…

电商API数据采集接口——电商大数据构建及智能应用

现在越来越多的电商企业和运营都开始关注数据的应用,在13年淘宝运营技巧的爆发,这其实就是数据带来的红利。在数据大爆炸的时代,数据分析已经成为了企业制定策略、发现问题的重要方法,所以,数据分析绝对是企业管理的贤…

Linux命令学习入门

文章目录 登录注销关机重启Vim编辑器快捷键文件目录类打包、解包、压缩和解压指令输出重定向>和追加>>指令时间日期类搜索查找类用户管理文件所有者所在组权限管理变更权限crond任务时间调度crond相关指令:特殊符号说明: at定时任务磁盘分区磁盘…

数据结构 之 栈与单调栈习题 力扣oj(附加思路版)

#include<stack> --栈的头文件 栈的特点 &#xff1a; 先进后出 &#xff0c; 后进先出 相关函数&#xff1a; top() 获取栈顶元素 ,返回栈顶元素的值 pop() 删除栈顶元素 ,没有返回值 push() 放入元素 ,没有返回值 empty() 为空返回 true 否则返回false size() 元素…

fs模块与path模块 综合练习

一、自定义一个递归函数&#xff0c;来获取目录下所有的文件信息(目录除外)&#xff0c;以数组形式返回。 注意&#xff1a;因为异步涉及到等待&#xff0c;所以使用同步完成 //导入fs 与 path const fsrequire(fs); const pathrequire(path);function readFiles(paths){ // …

新台阶——蓝桥杯单片机省赛第十四届程序设计题目

在做十四届题目之前&#xff0c;常常听学长说&#xff0c;十四届以前拿省一真的是右手就行&#xff0c;并不相信&#xff0c;在经历十四届痛苦的大量修bug和优化之后&#xff0c;或许学长的话真说对了几分。话不多说&#xff0c;我们开始一起完成单片机第十四届程序设计题目。 …

Vue3 + Vite + TS + Element-Plus + Pinia项目(4)添加element-plus引用

1、main.ts添加引用 import ElementPlus from element-plus import element-plus/dist/index.cssconst app createApp(App) app.use(ElementPlus) app.mount(#app) 2、在 tsconfig.json 中通过 compilerOptions.type 指定全局组件类型。

docker 不同架构镜像融合问题解决

1、背景 docker 作为目前容器的标准之一&#xff0c;但是对于多种架构的平台的混合编译支撑不是很好。因此衍生了镜像融合&#xff0c;分别将多种不同的架构构建好&#xff0c;然后将镜像进行融合上传。拉取镜像的会根据当前系统的架构拉取不同的镜像&#xff0c;也可以通过 -…

Web常见标签属性

应用软件&#xff1a;c/s&#xff08;客户端与服务端&#xff09; b/s&#xff08;服务器与浏览器架构&#xff09;web前端&#xff1a;html5、css3、JavaScriptHtml5&#xff1a;超文本标记语言 超链接标签 语法规范<标签名> marquee 标签之间可以嵌套属性&#xff1a;…

基于 Appium 的 Android UI 自动化测试!(建议收藏)

自动化测试是研发人员进行质量保障的重要一环&#xff0c;良好的自动化测试机制能够让开发者及早发现编码中的逻辑缺陷&#xff0c;将风险前置。日常研发中&#xff0c;由于快速迭代的原因&#xff0c;我们经常需要在各个业务线上进行主流程回归测试&#xff0c;目前这种测试大…

【八股】Java线程之间协作

1. 指定线程执行顺序 可以使用join()方法&#xff08;但中间加了Thread.sleep(1000)以后就不按顺序执行&#xff0c;不知道为什么&#xff09; public static void main(String[] args) throws CloneNotSupportedException {// 创建线程对象Thread t1 new Thread(() -> {…