ERNIE SDK Project Introduction
Overview
The ERNIE SDK repository is a comprehensive project containing two main components: ERNIE Bot Agent and ERNIE Bot. Introduced by Baidu's PaddlePaddle, the ERNIE Bot Agent is a framework designed for developing intelligent agents using large models. It leverages the orchestration capabilities of large ERNIE models, along with the pre-set platform functionalities from the PaddlePaddle Star Community. On the other hand, ERNIE Bot provides developers with simple interfaces to conveniently harness ERNIE model’s fundamental capabilities, such as text creation, general conversation, semantic vectors, and AI-powered graphics.
ERNIE Bot Agent
Key Features
-
Orchestration Abilities: The ERNIE Bot Agent is built on the Function Calling feature of ERNIE models to enable the orchestration and automatic scheduling of multiple tools. It allows mixing various components like tools, plugins, and knowledge bases. Beyond automatic scheduling, future updates will incorporate additional orchestration modes, such as manual and semi-automatic orchestration, offering developers more flexibility.
-
Component Library: ERNIE Bot Agent offers an extensive pre-built component library for developers:
- Pre-set Tools: Developers can load and utilize over 30 pre-set tools from the Star Community Tool Hub with a single line of code. These tools mainly originate from Baidu's AI development platform and PaddlePaddle’s unique PP Series models. Future updates will introduce more tools, and community contributions are welcome. Additionally, developers can customize tools locally and remotely.
- Knowledge Base: An out-of-the-box knowledge base platform is included, based on the Wenxin-baizhong. Developers can utilize popular open-source libraries like Langchain and llama_index for knowledge base applications.
- Wenxin Yiyan Plugins: Future plans include supporting plugins from the Wenxin Yiyan Plugin Marketplace (development in progress).
-
Low Development Barrier
- Zero-Code Interface: Thanks to the Star Community’s zero-code interface, developers can create AI-native applications through simple click configurations.
- Simple Coding: Intelligent applications can be swiftly developed with as little as 10 lines of code.
- Predesigned Resources and Platform Support: A plethora of pre-set tools, platform-level knowledge bases, and future platform memory mechanisms are in place to expedite the development process.
Installation
For developers interested in installing the ERNIE Bot Agent, Python version 3.8 or higher is required. Installation can be performed using source code or through quick installation commands.
- Source Installation: Clone the repository and install ERNIE Bot and the core modules of ERNIE Bot Agent step-by-step using shell commands.
- Quick Installation: Use specific pip commands to upgrade and install the latest version of the core or all modules of ERNIE Bot Agent.
Quick Experience
Developers can quickly construct intelligent applications using the ERNIE Bot Agent with a few lines of code. A sample script demonstrates how to initialize a large language model, integrate it with a speech synthesis tool, and perform both generic dialogue and specific tasked conversations.
Before running the code, developers should sign up and log into the AI Studio Star Community, acquire an Access Token from the Access Token page, set the necessary environment variables, and then execute the script.
Detailed Tutorials
For more in-depth understanding and comprehensive guides, the ERNIE Bot Agent documentation is available.
ERNIE Bot
As a supporting component for the ERNIE Bot Agent, ERNIE Bot provides powerful yet easy-to-use interfaces for developers. It enables effective utilization of the ERNIE model’s capabilities in various fundamental tasks, including text generation, general conversation, semantic vector processing, and AI-driven illustration.
More detailed user instructions can be found in the ERNIE Bot README.
Licensing
Both ERNIE Bot Agent and ERNIE Bot are released under the Apache-2.0 open source license, ensuring accessibility and freedom to use.