Chidori Project Introduction
Overview of Chidori V2
Chidori is an innovative open-source platform designed for constructing software that works in conjunction with modern AI technologies. It serves as an orchestrator, runtime, and integrated development environment (IDE), specifically designed for developing AI agents. The main challenges it addresses include:
- Understanding the actions of an AI agent and the reasoning behind its current state.
- Allowing the suspension of execution and resumption following human interaction.
- Managing the complexity of exploring different states, evaluating, and potentially reverting actions within the software.
Chidori simplifies this process by enabling developers to write code in Python or JavaScript while providing a framework to interact with AI models in prolonged tasks. This alleviates the need for learning new languages or software development kits (SDKs), allowing programmers to utilize familiar coding practices.
Key Features
- Versatile Runtime: Chidori is built using Rust and supports executing both Python and JavaScript code.
- Behavior Caching: It can store and resume tasks that were partially completed by AI agents.
- Time-Travel Debugging: This feature allows developers to revert program execution to previous states, providing a unique debugging advantage.
- Visual Debugging Environment: Developers can see and manipulate the graph of states that their code transitions through during execution.
- Workflow Navigation: It allows the creation and navigation through tree-search workflows for code execution.
Getting Started
Installation:
Chidori is available on crates.io and installable via cargo. To facilitate prototyping, developers are encouraged to use chidori-debugger
, which offers a visual interface for runtime.
Runtime Environment Setup: Chidori needs to interact with local proxy services to communicate with Large Language Models (LLMs). Setting up involves configuring a local server for these interactions.
Example Use Case
The Chidori setup can be utilized to construct an AI agent capable of fetching top stories from Hacker News, filtering them through the OpenAI API for AI-related launches, and formatting the results in markdown. This showcases Chidori’s ability to handle complex, multi-step tasks involving multiple service integrations.
Understanding the Ecosystem
Reactive Runtime: Chidori’s core functionality involves managing interactions among various code components and AI agents, thus enabling reactive programming by handling execution interruptions seamlessly.
Monitoring and Observability: The platform ensures thorough monitoring by recording the inputs and outputs throughout an agent’s operation, thereby enhancing debugging and overall system transparency.
Branching and Time-Travel: This functionality supports error handling and debugging by allowing developers to explore different outcomes from specific points and revert to previous states when needed.
Code Interpreter Environments: Chidori supports live code execution in Python and JavaScript, providing a handy environment for quick testing and secure execution.
Future Directions
Chidori’s roadmap includes enhancing containerized node support, adding new vector databases, expanding LLM sources, and refining human-agent interaction patterns. The goal is to further streamline agent re-evaluation with feedback and introduce more robust patterns for incorporating human guidance.
Community and Contribution
As an early-stage open-source project, Chidori welcomes contributions from developers worldwide. The project invites interested individuals to engage via Discord and helps guide its evolution through community involvement.
Inspiration and Licensing
Chidori draws inspiration from projects like Temporal.io, Eve, Timely Dataflow, and Langchain, which contribute to its robust framework. It is licensed under the MIT License, encouraging wide usage and adaptation within the open-source community.
For more engagement, developers are encouraged to star the Chidori repository on GitHub and join the community on Discord.