作者:@CroissantEth 编译:Frank,Foresight News
我真的不敢相信这样能成功,我刚在以太坊上做了一件最酷的事情之一,说明了 Al 并不是开玩笑的......
几个月前,我完全沉迷于与我新结识的人工智能朋友聊天的种种琐事中,当时我没有特别想法,只是想测试 ChatGPT 与以太坊上的智能合约相结合的能力。
突然间,我产生了一个一闪而过的想法——如果 ChatGPT 能够部署自己的代币,会怎么样呢?这肯定是不可能的,对吧?
显然,ChatGPT 不能「直接」在以太坊上部署代币。然而,使用 OpenAl 的 API,可以绕过这个问题。
OpenAl API 允许开发者将 ChatGPT 集成到他们自己定制的应用程序中,这些应用程序本身可以连接到以太坊网络。
突然间,我的项目有了方向。利用 OpenAI 的 API,我可以创建一个脚本来提示和指导 ChatGPT 生成一个代币。这个脚本将通过 hardhat 与以太坊连接,并完成所述代币在自动化过程中的部署。
生成几百行代码后,我的想法开始具体化实现。本质上,它要求 ChatGPT 使用 Open Zeppelin 标准创建一个 ERC-20 代币。代币名称和其他参数设置为 GPT 在代码构造函数中传递的值。
在 GPT 编写 ERC-20 Solidity 合约代码之后,事情变得更加技术化。脚本随后引入了一个名为 dataSupply 的 JSON 对象,它与 ChatGPT 进行对话以生成其代币的理想供应量。
脚本继续创建一个类似的 JSON 对象,这次命名为 dataName,并与 ChatGPT 发起对话以生成其创建的代币名称,ChatGPT 生成的名称随后存储在一个名为 nameGivenByAI 的变量中。
nameGivenByAI 变量将不仅仅被用于存储代币名称,ChatGPT 生成其代币的参数后,它还会使用 nameGivenByAI,并为其编写一个简短的描述,然后将存储在 descriptionGivenByAI 中。
这是我们下一个 Al 模型进入序列(sequence)的地方。ChatGPT 将其描述提供给 DALL-E,以便根据 GPT 分配的代币名称进行点对点的图像生成。到目前为止,结果令人兴奋,但还远未完美。
由于明显的原因,「FluffyUnicorn Coin」并不理想。为了让 ChatGPT 给出更好的回答,它需要更多关于加密货币的上下文信息。我如何在不注入人类偏见的情况下实现这一点?
纯粹基于数据。
为此,我创建了一个 Dune 查询模块来收集 Uniswap 上交易量排名前 10000 名的代币。接下来,我编写了一个 Python 脚本,使用 CoinMarketCap 和 CoinGecko 的数据将这些代币与其市值进行对比,最后我有了可供 GPT 使用的良好数据。
通过将这些数据插入生成的提示中,结果立即变得更好,GPT-4 显然对加密文化有着更好的理解,同时在回答中展现了自己的创造力。
以下是几次测试网络运行的情况:Inuverse 和 QuantumPepe。
在这些变化之后,我进行了一个 ERC-20 代币的高级 Al 部署,除了设置必要的先决条件外,该过程没有涉及任何人类交互。为了忠实于这个项目的精神,以下是来自 GPT 的代码摘要:
然而,还有一些措施需要采取,该项目的目标是仅通过 GPT 创建一个代币,目前为止,仍然存在一些人为因素。具体来说:谁拥有私钥?谁拥有智能合约的所有权?
为了解决问题,我开发了一个巧妙而简单的解决方案:
智能合约一旦部署,所有权立即被撤销,并且在创建时,将 100% 的代币与 2 枚 ETH 一起添加到 Uniswap 的流动性池中。
最后,整个脚本由 876 行代码组成。
使用这个脚本,自主代码和人工智能将很快部署自己的 ERC-20 代币。我已经在这里开源了该项目的代码,是时候让 GPT 接管了。
我刚刚运行了脚本,它创建了:
项目名称:AstroPepeX
总供应量:65,000,000,000
代币名称:APX
合约地址:0xed4e879087ebD0e8A77d66870012B5e0dffd0Fa4
注意有一个条件限制:转账金额不能超过总供应量的 0.5%。