全网最简洁 Code Agent,50行代码极速入门,带你通往AGI!

1. Code Agent

在人工智能领域,Code Agent不仅是技术进步的一个标志,更是我们迈向人工通用智能(AGI)的关键一步。AGI旨在创造能够执行任何智能任务的AI,而Code Agent的能力——自动编写和优化代码——是实现这一目标的基石之一。通过自动处理复杂的编程任务,Code Agent不仅提高了软件开发的效率,更重要的是,它使机器能够理解和执行与软件开发相关的高级认知任务,这是向AGI过渡的必要条件。

例如,当开发者使用Code Agent描述他们想要实现的功能时,如“创建一个可以自动整理和分类电子邮件的应用程序”,Code Agent不仅生成代码,更展示了理解复杂需求并转化为实际操作步骤的能力。这种能力展示了AI在理解人类语言和逻辑方面的进步,这是AGI的核心能力之一。

随着大型语言模型(LLMs)如ChatGPT和专用工具如Copilot的发展,我们已经看到AI在编程领域的应用越来越广泛,这些工具不仅提高了编程效率,更重要的是,它们在理解和生成代码的过程中积累的经验和数据将为开发完全自主的AI系统奠定基础。这些系统未来有望不仅仅是编程助手,而是能够独立设计和实施复杂项目的AGI实体。通过不断优化和应用这些智能工具,我们正在一步步接近创建一个真正的人工通用智能。

2. 50 行代码入门 AGI

本文将通过简洁明了的方式,仅用50行代码,带领你快速搭建自己的Code Agent。我们将一步步展示如何实现这一强大工具,助你轻松入门人工通用智能(AGI)。通过本教程,你不仅能够理解Code Agent的基本原理和应用,还能亲手实践,开启你的AGI探索之旅。接下来,让我们深入探索Code Agent的搭建过程,并见证它如何简化和革新传统的编程方式。

2.1 环境准备

Pandora Box

Pandora Box不仅仅是一个Python包;它是通往LLM基础开发未来的大门。通过提供一个安全、易用且完全开源的解决方案,它使开发者能够探索他们的LLM应用和代理的全部潜力。无论你是在创建一个编码助手、一个AI数据分析师,还是任何其他LLM驱动的工具,Pandora Box都为你提供了创新和卓越的基础。

[GitHub]

Semantic Kernel

Semantic kernel是微软开源的一个轻量级的开源开发套件,它让你可以轻松构建 AI Agent,并将最新的 AI 模型集成到您的 C#、Python 或 Java 代码库中;它提供了一个简单易用的 API,可以连接到各种 AI 服务,例如 OpenAI、Azure OpenAI 和 Hugging Face 等;并且它作为业高效的中间件,能够快速交付企级解决方案。

[Semantic Kernel详细教程

为了确保环境隔离和安全,最好使用conda来创建一个独立的虚拟环境。

# python >= 3.11
conda create -n pandora-box python=3.11
conda activate pandora-box
pip install PandoraBox

创建一个pandora box的api-key

$ pbox a

现在,你可以使用以下命令启动HTTP服务器:

$ pbox s

你可以通过http://127.0.0.1:9501/openapi.json或者http://127.0.0.1:9501/docs来验证服务是否启动成功。

2.2 完整代码

下面是完整的代码:

  1. 创建kernel
  2. 创建AzureChatCompletion服务,它是Azure的OpenAI服务,没有的可以直接使用OpenAI原生服务,semantic_kernel提供了支持;或者其它HuggingFace服务
  3. 添加AzureChatCompletion服务到kernel中
  4. 将PandoraBox服务作为插件添加到kernel(基于openapi.json描述文档即可,PandoraBox是FastAPI服务,所以完美支持)
  5. 配置Kernel执行过程,AzureChatPromptExecutionSettings设置auto_invoke=True表示kernel自动进行函数调用
  6. 配置对话history以及system message,将Pandora Box创建的api-key放入其中
  7. 开始进行对话
import asyncio
from semantic_kernel import Kernel
from semantic_kernel.contents import ChatHistory
from semantic_kernel.connectors.ai.open_ai import (
    AzureChatCompletion,
    AzureChatPromptExecutionSettings
)
from semantic_kernel.connectors.openapi_plugin import OpenAPIFunctionExecutionParameters
from semantic_kernel.connectors.ai.function_call_behavior import FunctionCallBehavior
from semantic_kernel.functions import KernelArguments

async def main():
    kernel = Kernel()
    chat_service = AzureChatCompletion(
        default_headers={},
        api_key="xxxxxx",
        api_version="xxxxx",
        endpoint="xxxxxx",
        deployment_name="gpt-4-turbo"
    )
    kernel.add_service(chat_service)
    kernel.add_plugin_from_openapi(
        plugin_name='PandoraBox',
        openapi_document_path='http://127.0.0.1:9501/openapi.json',
        execution_settings=OpenAPIFunctionExecutionParameters(enable_payload_namespacing=True)
    )
    azure_prompt_execution_settings = AzureChatPromptExecutionSettings(
        tool_choice="auto", function_call_behavior=FunctionCallBehavior.EnableFunctions(auto_invoke=True, filters={})
    )
    history = ChatHistory()
    history.add_system_message("""
    你是一个Python代码助手,可以通过python来解决用户的问题。
    你可以通过Python Box服务创建python环境,执行python代码,关闭python环境等。
    一个可用的api-key:xxxxxxxxxx 通过pbox a创建api-key xxxxxxxxx.
    """)
    while True:
        user_input = input("User > ")
        history.add_user_message(user_input)

        result = chat_service.get_streaming_chat_message_contents(
            chat_history=history,
            settings=azure_prompt_execution_settings,
            kernel=kernel,
            arguments=KernelArguments()
        )
        async for token in result:
            print(str(token[-1]), end='')
        print()
if __name__ == '__main__':
    asyncio.run(main())

2.3 多轮对话Case

1. User > 创建一个python环境
已成功创建Python环境,您可以在此环境中执行Python代码。环境的标识ID为:`a74ed602-03f6-4f89-8eb6-d88ddfdab7ff`。如果需要运行代码,请提供要执行的代码内容。

2. User > 帮我解一个方程,3x + 5y = 10; 5x + 4y  = 14;
解方程组 \(3x + 5y = 10\) 和 \(5x + 4y = 14\), 得到的解为:
- \(x \approx 2.31\)
- \(y \approx 0.62\)

3. User > 写代码解
这是一个使用Python和NumPy来解给定的线性方程组的示例代码:

import numpy as np

# 定义系数矩阵
A = np.array([[3, 5], [5, 4]])

# 定义常数项
B = np.array([10, 14])

# 使用numpy的linalg.solve方法来解方程
solution = np.linalg.solve(A, B)

# 打印出解
print('Solution: x = {}, y = {}'.format(solution[0], solution[1]))

这段代码首先定义了一个2x2的系数矩阵A,表示方程的左侧,和一个向量B,表示方程右侧的常数。然后,它使用`np.linalg.solve`函数求解线性方程组A * X = B。这里的X是未知数向量[x, y]。运行这段代码将输出x和y的解。

4. User > 运行下
解决方程后得到结果为:
- x = 2.307692307692308
- y = 0.615384615384615
  User >

如何学习AI大模型?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

在这里插入图片描述

👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

在这里插入图片描述

1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

程序员辣条

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

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

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

打赏作者

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

抵扣说明:

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

余额充值