Delphi is a versatile and adaptable conversational agent framework that streamlines chatbots and AI-driven agent systems. Its design prioritizes abstraction and provider-independence, allowing for seamless integration with various message providers. Delphi is compatible with a range of environments, including browsers, Node.js, and Deno, making it an ideal choice for diverse application scenarios.
Note: Delphi is currently in development. While usable, the API is subject to change. If you encounter a bug, please open an issue and help us improve the framework!
- π€ Provider-Independent: Delphi abstracts the messaging function, allowing seamless integration with various providers like OpenAI and Azure OpenAI.
- π Function Calling: The agent can call functions to perform tasks such as querying a database or making an API call, and incorporate the results into the conversation.
- π Flexible Conversational Flow: Manages complex conversation patterns with ease, facilitating intelligent and context-aware interactions.
- π οΈ Customizable Agent Options: Tailor your agent with configurable settings such as maximum rounds and specific model preferences.
- π Cross-Platform Compatibility: Works effortlessly in browsers, Node.js, and Deno environments.
- π Schema Validation: Ensures the integrity and correctness of data with JSON schema validation.
- ποΈ Modular Design: Facilitates easy integration and scalability through a clear and modular code structure.
- Node.js (v18 or newer), a modern browser, or Deno
- TypeScript
- An account with a supported message provider (e.g., Azure, OpenAI)
Delphi is available on npm and can be easily installed:
npm install @wecandobetter/delphi
To quickly get started with Delphi:
-
Import Delphi: Import the necessary components from Delphi in your project.
import { Agent, Context } from "@wecandobetter/delphi";
-
Create an Agent: Instantiate an
Agent
with your desired configuration.const agent = new Agent("myAgent" /* ... configuration ... */);
-
Initialize Context: Set up a
Context
to manage the conversation state.const context = new Context(); context.addMessage({ role: "system", content: "You are a helpful assistant!", }); context.addMessage({ role: "user", content: "Hello, I need help.", });
-
Run the Agent: Start the agent with the initialized context.
for (const { message } of agent.run(context)) { console.log(message.content); // "Sure, how can I help?" }
This example gives you a basic setup for initiating a conversation with Delphi. For more detailed usage and advanced features, refer to the documentation.
Visit the documentation for information on API usage and advanced features.
Contributions are welcome! Create an issue, open a pull request, or reach out to us in the discussions section.
Delphi is released under the MIT License. See the LICENSE file for more details.
Reach out to us at [email protected] for support or inquiries.
Happy conversing! π