python中eval表示什么
编辑部 发自 凹非寺
量子位 | 公众号 QbitAI
一觉醒来,程序员怕是真要失业了。
首个AI软件工程师一亮相,直接引爆整个科技圈。只需一句指令,它可端到端地处理整个开发项目。
![](https://p0.ssl.img.360kuai.com/t0132b19c5d3fa551d7.jpg)
在SWE-bench基准测试中,它无需人类帮助,可解决13.86%的问题。
相比之下,GPT-4只能处理1.74%的问题,且都需要人类提示告知处理哪些文件。
可以说,它远远超过了此前所有AI大模型。
![](https://p0.ssl.img.360kuai.com/t01acdb3322209ea26e.jpg)
从零构建网站、自主查找并修复Bug、甚至是训练和微调自己的AI模型通通都不在话下~也可为一些成熟的代码库做贡献。
![](https://p0.ssl.img.360kuai.com/t010c310c06ae1891ae.gif)
就是一些不熟悉的技术,给它看一篇博客文章。它也能立马搞定。
比如用ControlNet,生成带有隐藏文字的图像,Devin就是一点就通~
![](https://p0.ssl.img.360kuai.com/t01857ea316b5014446.gif)
据介绍,它已经成功通过一家AI公司面试,并且在Upwork上完成了实际工作。
![](https://p0.ssl.img.360kuai.com/t0184b80495c0c679c3.gif)
而这背后的公司Cognition,虽然是初创公司,但小而精悍。
在招人信息中明晃晃写着:我们有10个IOI金牌得主。
让同行们直呼:哦莫,疯了吧~
![](https://p0.ssl.img.360kuai.com/t016e5067dba712087f.jpg)
目前Devin尚未公测,不过已经有少部分人拿到了资格,开始实测了一波……
![](https://p0.ssl.img.360kuai.com/t01262aa0dffa16c90d.jpg)
首个AI软件工程师亮相
Devin被介绍为世界首个完全自主的AI软件工程师。
它在长程推理和规划上面下了很大功夫,可以规划和执行需要数千个决策才能完成的复杂软件工程任务。
在这之中,进行到任何一步它都可以回调所有相关的上下文信息,保证整体逻辑性,并方便随时校正错误。
既然是一个端到端AI,软件开发人员常用的工具,比如shell、代码编辑器和浏览器等等,Devin也都配备(沙盒计算环境中),主打一个全方位服务。
最终的Devin,让人类只需要发号施令,其他什么也不用做。
具体来看,其主要能力有以下六个:
1、端到端构建和部署程序
Devin可以帮我们解决的不只有是代码,还包括与之相关的整个工作流。
比如,当我们需要设计一个网页游戏时,Devin不仅能生成网页,还能直接完成服务端的部署,然后直接发布上线,省去了中间的人工操作。
只需要告诉Devin,我们想做一个个人网站,里面运行一个Devin定制版的生命游戏。
然后Devin表示自己会先搭建网站的基本架构,并询问了有没有更具体的需求。
![](https://p0.ssl.img.360kuai.com/t01b9c9e53932ae0a0e.jpg)
在明确要求之后,Devin给出了这样一份任务清单:
- 创建React应用,安装UI模块等依赖
- 用React和UI模组搭建前端环境
- 部署服务器并确保其在私有IP下运行
- 通过CDN向首页添加p5.js库
- 在React中部署并验证游戏的功能和资源是否正确配置
![](https://p0.ssl.img.360kuai.com/t0123f35898d77c1149.jpg)
接着,Devin就会按照自己设计的这个清单开始编写代码,然后部署服务……
△Devin部署后端服务器的过程
最终完成全部工作之后,一个即点即玩的游戏链接就呈现在了我们面前。
![](https://p0.ssl.img.360kuai.com/t01b0d20a5e3d57607e.jpg)
2、自主查找并修复bug
不仅能一气呵成完成开发部署,Devin的debug能力也是一流。
开发者给Devin一个GitHub链接,让它先熟悉项目情况,然后一会儿要准备数据进行测试。
![](https://p0.ssl.img.360kuai.com/t01f1ad89eddb0834a4.jpg)
接着,Devin就会按部就班地编写测试用的程序并准备好有关数据,然后运行。
结果,在开发者已经发布的完整项目之中,Devin还真的找到了连开发者自己都没有发现的漏洞。
![](https://p0.ssl.img.360kuai.com/t011120b864c2a760f0.jpg)
发现漏洞之后,Devin会回溯报错出现的位置及对应的数据,然后分析原因并给出解决方案。
最终经过调试,程序的bug被成功修复,完美通过了测试。
![](https://p0.ssl.img.360kuai.com/t0188cb2788e659486d.jpg)
3、训练和微调自己的AI模型
除了这些一般的程序或项目,作为一个全能型AI助手,Devin还有能力帮助人类训练和微调其他AI。
对于一些常见的模型(比如示例中的Llama),用户只需要在promot中提及模型的名称,Devin就直接知道要训练哪个模型。
而在这个示例中,微调的具体方法(QLoRA)是以GitHub链接的形式输入给Devin的。
![](https://p0.ssl.img.360kuai.com/t01da75dc9f71d63213.jpg)
接到指令后,Devin还是像处理平常的程序一样边规划边执行,所需环境和依赖,还有模型本体,都会自动下载安装。
![](https://p0.ssl.img.360kuai.com/t011d6ed3fc43a15172.jpg)
这些准备都完成之后,微调工作就会有条不紊地进行,而且其中的状态可以实时监控。
![](https://p0.ssl.img.360kuai.com/t0169522ab0ba14572b.jpg)
4、修复开源库
Devin的能力不仅在于开发者自己本身的项目,开源社区里的,它也能hold住。
比如我们只需要把GitHub项目的issue链接丢给Devin,它就能立即完成所需的所有配置,并自动收集上下文信息,然后开始解决问题。
![](https://p0.ssl.img.360kuai.com/t01c3831383371ca5ef.jpg)
当然,开源项目的功能请求(feature request)也没问题,和修问题的流程一样,自己搞好配置,收集上下文,然后就开始编码。
5、成熟的生产库也能做贡献
还没完,业已成熟的生产库,Devin也能给咱秀一把。
官方介绍,sympy Python代数系统中有一个对数计算的错误,就被Devin顺利解决:
配置环境、重现bug,自行编码并修复、测试,再次一气呵成。
△就是这个库
6、不熟的技术,现学现卖
最后,遇到自己不会的技能,Devin可以直接现学,并迅速付诸应用。
把你新刷到的技术文章链接直接丢给Devin:
Hi Devin!我在这个博客文章中(附网址)发现,可以生成带有隐藏文本的图像。文中提到了一个脚本,你能配置好它,然后为我真的生成一些图片吗?
![](https://p0.ssl.img.360kuai.com/t01dd8f9e659bd1d339.jpg)
Ps. 就是利用ControlNet来做这件事。
Devin接到请求后,首先询问了更为详细的需求,然后开始阅读博客文章,并像平常一样规划出了行动方案。
![](https://p0.ssl.img.360kuai.com/t0145f06aff4d4a1ed1.jpg)
有了详细的行动方案后,它立刻就在数分钟内进行代码编写和调试。
同样的,在这里遇到bug也不用惊慌,Devin同样有能力直接进行修复。
![](https://p0.ssl.img.360kuai.com/t01a16136086e4e893c.jpg)
完成工具的搭建后,Devin也没有劳烦人类自行配置使用,而是一气呵成,最终生成了咱们要的带隐藏文字的图像:
![](https://p0.ssl.img.360kuai.com/t01f8289c466a1c96da.jpg)
可以说表现相当令人惊艳。
而在具体测试中,Devin取得的成绩同样亮眼。
在评估Devin的表现时,团队没有使用常见的HumanEval,而是用了更具挑战性的SWE-bench。
这个数据集是由GitHub中的实际问题组成的,Devin不借助任何辅助,就取得了13.86%的最高解决率。
而同样在无辅助的条件下,GPT-4的问题解决率为零,此前的最佳水平是1.96%,加入辅助也才4.8%。
![](https://p0.ssl.img.360kuai.com/t01d067be3efdf97caf.jpg)
公司人均一块IOI金牌
如此炸天的新成果,背后却是一家名不见经传的初创公司。
但这种“名不见经传”背后,实际是一个10人员工的编程天才团队,IOI金牌就有10块…人均一块。
Devin背后公司名为Cognition AI,总部设在纽约和旧金山,定位是一家专注于推理的应用AI实验室。
此前这家公司一直秘密工作,于两个月前正式注册成立。
目前该团队规模仅有10人,但共揽获了10枚IOI金牌,创始成员均曾在Cursor、Scale AI、Lunchclub、Modal、Google DeepMind、Waymo、Nuro等从事AI前沿工作。
据悉,Cognition AI由Scott Wu、Steven Hao、WaldenYan创立。
![](https://p0.ssl.img.360kuai.com/t01b535c523ead5a4af.jpg)
联合创始人兼CEO Scott Wu,根据我们目前搜到的资料,Scott Wu曾就读于哈佛大学,曾是Lunchclub的联合创始人兼CTO。
![](https://p0.ssl.img.360kuai.com/t0111a574bf7f2f35a9.jpg)
曾连续三年揽获IOI金牌:
![](https://p0.ssl.img.360kuai.com/t01f6772070137cce58.jpg)
联合创始人兼CTO Steven Hao,毕业于MIT计算机专业,之前曾在Scale AI、Jane Street、DE Shaw、Quora工作。
![](https://p0.ssl.img.360kuai.com/t01e585e470c9178ad2.jpg)
也曾是IOI金牌得主:
![](https://p0.ssl.img.360kuai.com/t01589180cb0858e564.jpg)
联合创始人兼CPO Walden,曾于哈佛大学攻读计算机科学和经济学相关专业,还曾从事MIT PRIMES密码学和机器学习方向的计算机科学研究,还是沃顿商学院高中投资大赛北美地区决赛入围者。
![](https://p0.ssl.img.360kuai.com/t01200319ace4a3026d.jpg)
2020年第32届IOI金牌得主:
![](https://p0.ssl.img.360kuai.com/t010e7ec91e58d59394.jpg)
据X推文的转发顺藤摸瓜,还有一位创始成员被扒了出来。
Neal Wu,同样有哈佛大学教育经历,曾在tryramp、GoogleBrain工作过。
![](https://p0.ssl.img.360kuai.com/t014b598c527ece7067.jpg)
整个团队长期目标,意在通过解决推理问题,在广泛的学科领域解锁新的可能性,而“代码仅仅是开始”。
不过对于Devin,目前他们尚未透露是如何实现这一壮举的,包括到底是使用自己的专有模型还是第三方模型。
此外,Cognition AI目前已获得硅谷投资大佬彼得·蒂尔的Founders Fund基金领投的2100万美元A轮融资。
众所周知,彼得蒂尔以挖掘这种极具突破性的创新项目著称,而且哈佛背景的创业者更是和他渊源紧密。
上一个他早期投资中类似背景,最知名的是扎克伯格和Facebook。
“自动化软件工程与自动驾驶类似”
Devin一亮相,让不少工程师大惊失色:软件工程师…要失业了???
![](https://p0.ssl.img.360kuai.com/t01e271184d5a45031e.jpg)
![](https://p0.ssl.img.360kuai.com/t018a5013df04821d6e.jpg)
![](https://p0.ssl.img.360kuai.com/t0151ce894a972bb736.jpg)
不过也有人依然乐观:终于有AI让我们从繁重的编程任务中解脱出来。
![](https://p0.ssl.img.360kuai.com/t0170db8b84c557b779.jpg)
前特斯拉AI总监卡帕西倒是给了一颗定心丸。
自动化软件工程,目前看起来与自动化驾驶类似。
具体体现在发展进程上:首先人类手动编写代码,然后 GitHub Copilot 自动完成几行,再之后ChatGPT 编写代码块,现在就是Devin的出现。
接下来,他认为自动化软件工程会演变成为协调开发人员需要串联的许多工具一起编写代码:终端、浏览器、代码编辑器等。以及人类负责监督,逐渐转向更高级别工作。
结合卡帕西的经历和对自动驾驶的理解,他表达的更多是一种渐进式推进,即会有一段时间的人机共驾,然后在数据和迭代反馈后,才能实现完全无人驾驶。
自动化软件也类似,先低代码,然后零代码,最后完全不需要人写代码。
![](https://p0.ssl.img.360kuai.com/t01d48ec25c52e53f8d.jpg)
Perplexity AI CEO给出了个高度的肯定:这应该是任何Agent的第一个演示。
它似乎跨越了人类水平的门槛并且可靠地工作。它还告诉我们通过结合 LLM 和树搜索算法可以实现什么
![](https://p0.ssl.img.360kuai.com/t01fe36814b49817c88.jpg)
德扑AI之父、前FAIR(Meta)研究科学家、现已加入OpenAI的Noam Brown转发开麦:
2024年是AI激动人心的一年。
![](https://p0.ssl.img.360kuai.com/t01443c44078bddd8cd.jpg)
所以,程序员们做好被解放的准备了吗?(Doge)
参考链接:[1]https://twitter.com/cognition_labs/status/1767548763134964000/quotes[2]https://waldenyan.com/[3]https://twitter.com/itsandrewgao/status/1767628564432670904[4]https://twitter.com/Lauramaywendel/status/1767588416730894756[5]https://www.bloomberg.com/news/articles/2024-03-12/cognition-ai-is-a-peter-thiel-backed-coding-assistant
— 完 —
量子位 QbitAI · 头条号签约
","gnid":"91a3ae0849ac26c08","img_data":[{"flag":2,"img":[{"desc":"","height":1196,"title":"","url":"https://p0.ssl.img.360kuai.com/t0139f48ade4953a14f.jpg","width":816},{"desc":"","height":"588","title":"","url":"https://p0.ssl.img.360kuai.com/t01acdb3322209ea26e.jpg","width":"1080"},{"desc":"","height":583,"s_url":"https://p0.ssl.img.360kuai.com/t010c310c06ae1891ae_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t01187e5aff93fdf038.gif","width":946},{"desc":"","height":583,"s_url":"https://p0.ssl.img.360kuai.com/t01857ea316b5014446_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t01ceb26dddcfef7121.gif","width":946},{"desc":"","height":"583","s_url":"https://p0.ssl.img.360kuai.com/t0184b80495c0c679c3_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t0184b80495c0c679c3.gif","width":"946"},{"desc":"","height":"424","title":"","url":"https://p0.ssl.img.360kuai.com/t016e5067dba712087f.jpg","width":"828"},{"desc":"","height":"718","title":"","url":"https://p0.ssl.img.360kuai.com/t01262aa0dffa16c90d.jpg","width":"806"},{"desc":"","height":"578","title":"","url":"https://p0.ssl.img.360kuai.com/t01b9c9e53932ae0a0e.jpg","width":"1110"},{"desc":"","height":"884","title":"","url":"https://p0.ssl.img.360kuai.com/t0123f35898d77c1149.jpg","width":"1104"},{"desc":"","height":"465","title":"","url":"https://p0.ssl.img.360kuai.com/t01b0d20a5e3d57607e.jpg","width":"1080"},{"desc":"","height":"754","title":"","url":"https://p0.ssl.img.360kuai.com/t01f1ad89eddb0834a4.jpg","width":"1148"},{"desc":"","height":"696","title":"","url":"https://p0.ssl.img.360kuai.com/t011120b864c2a760f0.jpg","width":"832"},{"desc":"","height":"546","title":"","url":"https://p0.ssl.img.360kuai.com/t0188cb2788e659486d.jpg","width":"1148"},{"desc":"","height":"658","title":"","url":"https://p0.ssl.img.360kuai.com/t01da75dc9f71d63213.jpg","width":"1080"},{"desc":"","height":"582","title":"","url":"https://p0.ssl.img.360kuai.com/t011d6ed3fc43a15172.jpg","width":"1122"},{"desc":"","height":"641","title":"","url":"https://p0.ssl.img.360kuai.com/t0169522ab0ba14572b.jpg","width":"1080"},{"desc":"","height":"728","title":"","url":"https://p0.ssl.img.360kuai.com/t01c3831383371ca5ef.jpg","width":"549"},{"desc":"","height":"410","title":"","url":"https://p0.ssl.img.360kuai.com/t01dd8f9e659bd1d339.jpg","width":"1270"},{"desc":"","height":"1579","title":"","url":"https://p0.ssl.img.360kuai.com/t0145f06aff4d4a1ed1.jpg","width":"1080"},{"desc":"","height":"584","title":"","url":"https://p0.ssl.img.360kuai.com/t01a16136086e4e893c.jpg","width":"1080"},{"desc":"","height":"540","title":"","url":"https://p0.ssl.img.360kuai.com/t01f8289c466a1c96da.jpg","width":"956"},{"desc":"","height":"458","title":"","url":"https://p0.ssl.img.360kuai.com/t01d067be3efdf97caf.jpg","width":"828"},{"desc":"","height":"866","title":"","url":"https://p0.ssl.img.360kuai.com/t01b535c523ead5a4af.jpg","width":"1080"},{"desc":"","height":"374","title":"","url":"https://p0.ssl.img.360kuai.com/t0111a574bf7f2f35a9.jpg","width":"1080"},{"desc":"","height":"445","title":"","url":"https://p0.ssl.img.360kuai.com/t01f6772070137cce58.jpg","width":"1080"},{"desc":"","height":"371","title":"","url":"https://p0.ssl.img.360kuai.com/t01e585e470c9178ad2.jpg","width":"1080"},{"desc":"","height":"422","title":"","url":"https://p0.ssl.img.360kuai.com/t01589180cb0858e564.jpg","width":"1080"},{"desc":"","height":"409","title":"","url":"https://p0.ssl.img.360kuai.com/t01200319ace4a3026d.jpg","width":"1080"},{"desc":"","height":"403","title":"","url":"https://p0.ssl.img.360kuai.com/t010e7ec91e58d59394.jpg","width":"1080"},{"desc":"","height":"514","title":"","url":"https://p0.ssl.img.360kuai.com/t014b598c527ece7067.jpg","width":"934"},{"desc":"","height":"869","title":"","url":"https://p0.ssl.img.360kuai.com/t01e271184d5a45031e.jpg","width":"1080"},{"desc":"","height":"156","title":"","url":"https://p0.ssl.img.360kuai.com/t018a5013df04821d6e.jpg","width":"794"},{"desc":"","height":"744","title":"","url":"https://p0.ssl.img.360kuai.com/t0151ce894a972bb736.jpg","width":"764"},{"desc":"","height":"192","title":"","url":"https://p0.ssl.img.360kuai.com/t0170db8b84c557b779.jpg","width":"798"},{"desc":"","height":"272","title":"","url":"https://p0.ssl.img.360kuai.com/t01d48ec25c52e53f8d.jpg","width":"812"},{"desc":"","height":"204","title":"","url":"https://p0.ssl.img.360kuai.com/t01fe36814b49817c88.jpg","width":"780"},{"desc":"","height":"1048","title":"","url":"https://p0.ssl.img.360kuai.com/t01443c44078bddd8cd.jpg","width":"934"}]}],"original":0,"pat":"art_src_3,fts0,sts0","powerby":"pika","pub_time":1710295620000,"pure":"","rawurl":"http://zm.news.so.com/3c56c438edc182167dd4893134ad6902","redirect":0,"rptid":"895c0e678bebefc3","rss_ext":[],"s":"t","src":"量子位","tag":[],"title":"首个AI软件工程师震撼硅谷!10块IOI金牌团队铁了心砸程序员饭碗
岑斧图2540在python中 float当中包含int吗? -
杭童珠18865677442 ______ int() float() python的使用的是函数式的转化写法,而不是C# java中的将类型括起来的写法 有两种用处: 1、做强制类型转化 int(1.66) == 1 float(5) == 5.0 2、做解析用法,参数为字符串(其它语言加做parse() ) int("34") == 34 int("12.5") //error不能解析为整型 float("34.9") == 34.9 float("12") == 12.0
岑斧图2540Python中如果对基础类型进行反射,比如int、float -
杭童珠18865677442 ______ 动态语言里面的eval就是干这个用的 type1="int" type2="str" a=eval(type1+"(2222)") 这里a就是int型的2222 相当于执行a=eval("int(2222)") b=eval(type2+("2222")) 这里b就是string型的"2222" 相当于执行b=eval("str(2222)") 另外Python偏函数特性也比较像这个,你可以搜索下看看.
岑斧图2540如何运用python打印算式36+45=81? -
杭童珠18865677442 ______ print(36+45=81).在python里面,print()函数是我们最先接触到的,它是一个输出函数.你可以用它来输出你想要的东西.
岑斧图2540python重要的几个内置函数用法 -
杭童珠18865677442 ______ python内置了很多可以供我们直接调用的函数,这些函数的效率往往都非常高,我们在自己造轮子的同时,也非常有必要了解并且正确使用python给我们提供的大量的内置函数,在前面的博客里面我已经介绍了几个比较常用的函数,这里再介绍几个,它们分别是collections模块下的 Counter函数,deque函数以及defaultdict函数.
岑斧图2540python里s='fenshu="wuban5600"'我想eval(s)为什么不行? -
杭童珠18865677442 ______ 使用exec(s)就行了.>>> s='fenshu="wuban5600"'>>> exec(s)>>> fenshu'wuban5600'>>> =================== 希望对你有所帮助!
岑斧图2540Python中怎么用字符串来命名一个函数? -
杭童珠18865677442 ______ 有2个标准库函数可以完成你说的要求,建议用eval() eval() 和exec()区别是eval()有返回值 def test1(): print "Test1 Excuted!" return True ret = eval ("test1()") print ret结果如下>>> Test1 Excuted!True而exec()只执行,并无返回值.def test2(): print "Test2 Excuted!" return True exec("test2()")结果如下>>> Test2 Excuted!>>>如果要将exec()赋值,会有以下语法错误!ret = exec("test2()")
岑斧图2540python - - repr--的作用 -
杭童珠18865677442 ______ 这个函数,对应repr(object)这个功能.意思是当需要显示一个对象在屏幕上时,将这个对象的属性或者是方法整理成一个可以打印输出的格式.这个功能与eval也可以对应.打印出的结果直接放到eval里,通常可以获得原来的对象.比如t1=...
岑斧图2540Python中什么是变量Python中定义字符串 -
杭童珠18865677442 ______ Python有eval,不过不推荐使用,代码可读性差. 可以采用列表嘛, _list = [button1,button2,button3,button4] for aButton in _list: print(aButton.Text)
岑斧图2540<%#Eval("POName")%>中的Eval表示什么? -
杭童珠18865677442 ______ 那个Eval实际上是TemplateControl.Eval 方法,就数据绑定控件来说,是使用 GetDataItem 方法,如果有数据,就在GetDataItem 内部调用 DataBinder.Eval 方法,以解析计算表达式所依据的对象引用.