|
1 | | -# 🍽️ **KitchenAI** |
| 1 | +# KitchenAI |
2 | 2 |
|
3 | 3 | <p align="center"> |
4 | 4 | <img src="docs/_static/images/logo.png" alt="KitchenAI" width="100" height="100"> |
5 | 5 | </p> |
6 | 6 |
|
7 | | -**Empower Your AI Development with KitchenAI: An AI Runtime for Experimentation, Integration, and Deployment** |
8 | | - |
9 | | -[](https://docs.kitchenai.dev) |
10 | | -[](https://github.com/Tobi-De/falco) |
11 | | -[](https://github.com/pypa/hatch) |
| 7 | +**KitchenAI** is a control plane for AI implementations — designed to bridge the gap between application developers and AI teams. Our platform simplifies AI integration with a loosely coupled, modular architecture that delivers production-grade reliability while letting your teams focus on what they do best. |
12 | 8 |
|
13 | 9 | --- |
14 | 10 |
|
15 | | -**[Documentation](https://docs.kitchenai.dev)** |
16 | | -**[KitchenAI Cloud](#-get-early-access)** |
17 | | - |
18 | | -## 🚀 **What is KitchenAI?** |
19 | | - |
20 | | -KitchenAI is an open-source AI runtime designed to simplify experimentation, integration, and deployment for AI development teams. It transforms complex AI projects into scalable, distributed systems using lightweight, shareable AI components called Bento Boxes. |
21 | | - |
22 | | -With KitchenAI, you can: |
23 | | - |
24 | | -- **Experiment and test** AI techniques like RAG or embeddings effortlessly. |
25 | | -- **Integrate and deploy** distributed AI applications seamlessly. |
26 | | -- **Scale and unify** polyglot AI systems under one API. |
27 | | - |
28 | | -### **Key Features**: |
29 | | -1. **Distributed AI Runtime**: Build and scale AI systems with polyglot components. |
30 | | -2. **Framework & Cloud Agnostic**: Use any AI framework or cloud platform. |
31 | | -3. **Lightweight Bento Boxes**: Package and share AI implementations in minutes. |
| 11 | +## 🚀 Quick Start |
32 | 12 |
|
| 13 | +- **Explore Our Interactive Playground:** |
| 14 | + [Try KitchenAI in Action](https://playground.kitchenai.dev/apps/playground) |
| 15 | +- **Take a Guided Tour:** |
| 16 | + [Watch the Guided Tour](https://app.arcade.software/share/j5ORenX65H5xuZWRppR4) |
33 | 17 |
|
34 | 18 | --- |
35 | 19 |
|
36 | | -## 🛠️ **Who is KitchenAI For?** |
| 20 | +## 🌟 What Makes KitchenAI Unique |
37 | 21 |
|
38 | | -- **AI Development Teams**: Build, test, and deploy AI systems quickly without operational overhead. |
39 | | -- **Application Developers**: Simplify AI integration with unified APIs. |
40 | | -- **Data Scientists**: Deploy your experiments into production-ready services effortlessly. |
41 | | -- **Infrastructure Engineers**: Optimize distributed AI systems with modular components and observability tools. |
42 | | - |
43 | | ---- |
44 | | -**Say goodbye to complexity!** |
| 22 | +### Modular Architecture |
| 23 | +- **Bento Boxes:** Package your AI workflows into independent "bento boxes" that encapsulate complex logic. |
| 24 | +- **Flexibility:** Update, replace, or scale individual modules without disrupting your overall system. |
| 25 | +- **Clear Separation:** Let AI teams build advanced logic in a reproducible and swappable space, while app developers enjoy a simple, stable API. |
45 | 26 |
|
46 | | -## 🚀 **Transform AI development with KitchenAI** |
47 | | -Example: Turn AI experiments into Bento Boxes and deploy distributed AI systems: |
| 27 | +### High-Performance Messaging |
| 28 | +- **Powered by NATS:** |
| 29 | + - Lightning-fast, reliable communication between AI modules |
| 30 | + - Dynamic service discovery and routing |
| 31 | + - Robust support for event-driven workflows in distributed environments |
48 | 32 |
|
| 33 | +### Framework Agnostic |
| 34 | +- **Plug & Play:** |
| 35 | + - No vendor lock-in—integrate with any AI framework or model |
| 36 | + - Native support for LangChain, LlamaIndex, and custom implementations |
| 37 | + - Future-proof your AI infrastructure with flexible integration options |
49 | 38 |
|
50 | 39 | --- |
51 | 40 |
|
52 | | -## 💡 **Why KitchenAI?** |
53 | | - |
54 | | -KitchenAI eliminates the hurdles of AI development by offering: |
55 | | - |
56 | | -1. **Unified AI Runtime**: Seamlessly integrate diverse frameworks, tools, and languages. |
57 | | -2. **NATS-Powered Messaging Fabric**: Connect Bento Boxes to create distributed, scalable AI systems. |
58 | | -3. **Plugin Ecosystem**: Extend capabilities with prompt management, evaluations, and more. |
59 | | -4. **Vendor Neutral**: Keep your AI stack portable and flexible. |
60 | | -5. **Faster Experimentation to Deployment**: Focus on innovation, not infrastructure. |
61 | | - |
62 | | ---- |
63 | | - |
64 | | -## ⚡ **Quickstart** |
65 | | - |
66 | | -1. **Start the KitchenAI Control Plane** |
67 | | - ```bash |
68 | | - export OPENAI_API_KEY=<your key> |
69 | | - git clone https://github.com/epuerta9/kitchenai.git |
70 | | - docker compose up -d |
71 | | - ``` |
72 | | - |
73 | | -2. **Create a Local Account** |
74 | | - go to `http://localhost:8001` and create an account. |
75 | | -  |
76 | | - |
77 | | - |
78 | | -3. **Run the Example Bento Box** |
79 | | - This will connect to the KitchenAI Control Plane and run the example bento box. |
80 | | - ```bash |
81 | | - uv run bento-community/polyglot-rag/openai-simple.py |
82 | | - ``` |
83 | | -4. **Chat with your Bento Box** |
84 | | - Go to the chat tab and start a new session using your bento box. |
85 | | - |
86 | | -5. **(for RAG bentos)Create a default Minio Bucket** |
87 | | - kitchenai uses s3 storage as default so it needs a base kitchenai bucket |
88 | | - 1. go to `http://localhost:9001` |
89 | | - 2. log in as minioadmin / minioadmin |
90 | | - 3. create bucket **kitchenai** |
91 | | - |
92 | | -6. **Make Your Own Bento Box** |
93 | | - |
94 | | - |
95 | | -📖 Full quickstart guide at [docs.kitchenai.dev](https://docs.kitchenai.dev/cookbooks/quickstarts/). |
| 41 | +## 🛠️ How It Works |
| 42 | + |
| 43 | +KitchenAI’s three-layer architecture makes it easy to manage your AI workflows: |
| 44 | + |
| 45 | +1. **Application Layer:** |
| 46 | + Your business applications call a simple, unified API (just like using OpenAI’s Chat Completions). |
| 47 | + |
| 48 | +2. **NATS Messaging Layer:** |
| 49 | + This is our high-performance backbone for routing messages and discovering services dynamically. |
| 50 | + |
| 51 | +3. **Bento Boxes Layer:** |
| 52 | + Modular AI implementations where your AI team builds the complex logic (be it LLM logic, RAG, agents, or custom workflows). |
| 53 | + |
| 54 | +### For Application Developers |
| 55 | +Your code remains clean and simple: |
| 56 | + |
| 57 | +```python |
| 58 | + # Simple integration using OpenAI's Chat Completions |
| 59 | + response = await openai_client.chat.completions.create( |
| 60 | + model="@llama-index-agents/query", #your bento box client id |
| 61 | + messages=[{"role": "user", "content": data.query}] |
| 62 | + ) |
| 63 | +``` |
| 64 | + |
| 65 | +### For AI Teams |
| 66 | +Focus on building powerful AI code: |
| 67 | + |
| 68 | +```python |
| 69 | +@kitchen.query.handler("query") |
| 70 | +async def query_handler(data: WhiskQuerySchema) -> WhiskQueryBaseResponseSchema: |
| 71 | + # Advanced RAG implementation with best practices built-in |
| 72 | + index = VectorStoreIndex.from_vector_store(vector_store) |
| 73 | + query_engine = index.as_query_engine( |
| 74 | + chat_mode="best", |
| 75 | + filters=filters, |
| 76 | + llm=llm, |
| 77 | + verbose=True |
| 78 | + ) |
| 79 | +``` |
96 | 80 |
|
97 | 81 | --- |
98 | 82 |
|
99 | | -## ✨ **Features** |
| 83 | +## 📚 Documentation |
100 | 84 |
|
101 | | -- **🚀 Distributed AI Runtime**: Build AI systems with ease. |
102 | | -- **🛠️ NATS Messaging Fabric**: Connect components for scalable, distributed workflows. |
103 | | -- **🔌 Plugin Ecosystem**: Extend capabilities with custom integrations. |
104 | | -- **📦 Bento Boxes**: Shareable, lightweight AI implementations. |
105 | | -- **🌐 Framework & Cloud Agnostic**: Deploy anywhere, with any stack. |
| 85 | +- [Getting Started](https://kitchenai.dev/docs/getting-started) |
| 86 | +- [Core Concepts](https://kitchenai.dev/docs/core-concepts) |
| 87 | +- [Deployment Guide](https://kitchenai.dev/docs/deployment) |
| 88 | +- [API Reference](https://kitchenai.dev/docs/api-reference) |
106 | 89 |
|
107 | 90 | --- |
108 | 91 |
|
109 | | -## 📊 **AI Lifecycle with KitchenAI** |
| 92 | +## 🛠️ Key Features |
110 | 93 |
|
111 | | -1. **Experiment**: Develop AI techniques and annotate them for deployment. |
112 | | -2. **Build**: Package techniques into Bento Boxes. |
113 | | -3. **Deploy**: Run distributed systems with observability and scaling tools. |
114 | | -4. **Iterate**: Improve using built-in performance and tracing features. |
| 94 | +- **Version Control & Rollback:** Safely iterate and revert as needed. |
| 95 | +- **Monitoring & Observability Hooks:** Integrate with your favorite tools. |
| 96 | +- **Plugin Ecosystem:** Extend KitchenAI with additional capabilities. |
| 97 | +- **Security Integrations:** Designed with production-grade best practices. |
115 | 98 |
|
116 | 99 | --- |
117 | 100 |
|
118 | | -## 🔧 **Under the Hood** |
| 101 | +## 🙋♂️ Join the Beta! |
119 | 102 |
|
120 | | -- **NATS Messaging Fabric**: Seamless connectivity for distributed systems. |
121 | | -- **Bento Boxes**: Lightweight, shareable AI components. |
122 | | -- **Plugin System**: Extend with prompt management, evaluations, and more. |
123 | | -- **Observability Built-In**: Tools for tracing, monitoring, and debugging. |
| 103 | +KitchenAI is still in beta—we're excited to have early adopters help shape the platform. |
| 104 | +- **Join the Waitlist:** [Get Early Access](https://kitchenai.dev/#waitlist) |
| 105 | +- **Play in Our Playground:** [Try it out now](https://playground.kitchenai.dev) |
124 | 106 |
|
125 | 107 | --- |
126 | 108 |
|
127 | | -### **LLMOps Infrastructure (Baked In)** |
128 | | - |
129 | | -**Every KitchenAI instance includes a complete LLMOps suite for production visibility and control:** |
130 | | - |
131 | | -- **✅ OpenTelemetry Integration:** Full tracing across **workflows**, **agent calls**, and **vector stores**. |
132 | | -- **✅ DeepEval Integration:** Real-time **AI performance evaluation**—track accuracy, relevance, and quality metrics out-of-the-box. |
133 | | -- **✅ Grafana Dashboards:** Pre-configured **visual dashboards** for monitoring workflow health, latencies, and throughput. |
134 | | -- **✅ Sentry Integration:** Capture **errors** and exceptions across your **entire AI stack**, from vector lookups to LLM responses. |
135 | | -- **✅ Prompt Management:** Define reusable **prompt templates** with version control and easy debugging. |
136 | | -- **✅ Query Modifiers:** Dynamically **transform** user queries before they reach the model for better results. |
137 | | -- **✅ Response Synthesizer:** Ensure **consistent outputs** by applying customizable response transformations. |
138 | | - |
| 109 | +## 🔗 Quick Links |
139 | 110 |
|
140 | | -## 🚀 **Roadmap** |
141 | | - |
142 | | -- Streaming support. |
143 | | -- Agent orchestration workflows. |
144 | | -- Advanced observability features. |
145 | | -- OpenAI API compatibility. |
146 | | -- Marimo integrations. |
147 | | - |
148 | | -📣 **Have suggestions or want to contribute?** Reach out to join the KitchenAI journey! |
| 111 | +- [Website](https://kitchenai.dev) |
| 112 | +- [Documentation](https://kitchenai.dev/docs) |
| 113 | +- [Interactive Playground](https://playground.kitchenai.dev) |
| 114 | +- [GitHub](https://github.com/epuerta9/kitchenai) |
149 | 115 |
|
150 | 116 | --- |
151 | 117 |
|
152 | | -## 🤝 **Contribute** |
| 118 | +## 📄 License |
153 | 119 |
|
154 | | -KitchenAI is open-source and thrives on community contributions: |
155 | | -- ⭐ Star the repo on GitHub! |
156 | | -- 🛠️ Submit PRs or share feedback. |
157 | | -- 🧑🍳 Build plugins and share AI modules. |
| 120 | +KitchenAI is released under the [Apache 2.0 License](LICENSE). |
158 | 121 |
|
159 | 122 | --- |
160 | 123 |
|
161 | | -## 🙏 **Acknowledgements** |
| 124 | +## 🙋♂️ Support & Community |
162 | 125 |
|
163 | | -KitchenAI draws inspiration from the open-source community and modern AI challenges. Together, we simplify AI development! |
| 126 | +- [Community Forum](https://kitchenai.dev/community) |
| 127 | +- [GitHub Issues](https://github.com/epuerta9/kitchenai/issues) |
| 128 | +- [Email Support](mailto:support@kitchenai.dev) |
164 | 129 |
|
165 | 130 | --- |
166 | 131 |
|
167 | | -## 📊 **Telemetry** |
168 | | - |
169 | | -KitchenAI collects **anonymous usage data** to improve the framework—no PII or sensitive data is collected. |
170 | | - |
171 | | -> Let’s build the future of AI development together! |
172 | | -
|
173 | | -"{\"client_id\":\"openai-simple\",\"namespace\": \"openai\",\"label\":\"chat\"}" |
| 132 | +<p align="center"> |
| 133 | + Built with ❤️ by the KitchenAI Team |
| 134 | +</p> |
0 commit comments