Skip to content

Commit ddba904

Browse files
new readme
1 parent f61e0a9 commit ddba904

File tree

3 files changed

+93
-134
lines changed

3 files changed

+93
-134
lines changed

README.md

Lines changed: 89 additions & 128 deletions
Original file line numberDiff line numberDiff line change
@@ -1,173 +1,134 @@
1-
# 🍽️ **KitchenAI**
1+
# KitchenAI
22

33
<p align="center">
44
<img src="docs/_static/images/logo.png" alt="KitchenAI" width="100" height="100">
55
</p>
66

7-
**Empower Your AI Development with KitchenAI: An AI Runtime for Experimentation, Integration, and Deployment**
8-
9-
[![Docs](https://img.shields.io/badge/Docs-kitchenai.dev-blue)](https://docs.kitchenai.dev)
10-
[![Falco](https://img.shields.io/badge/built%20with-falco-success)](https://github.com/Tobi-De/falco)
11-
[![Hatch Project](https://img.shields.io/badge/%F0%9F%A5%9A-Hatch-4051b5.svg)](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.
128

139
---
1410

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
3212

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)
3317

3418
---
3519

36-
## 🛠️ **Who is KitchenAI For?**
20+
## 🌟 What Makes KitchenAI Unique
3721

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.
4526

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
4832

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
4938

5039
---
5140

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-
![kitchenai-dev](docs/_static/images/sign-in.png)
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+
```
9680

9781
---
9882

99-
## **Features**
83+
## 📚 Documentation
10084

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)
10689

10790
---
10891

109-
## 📊 **AI Lifecycle with KitchenAI**
92+
## 🛠️ Key Features
11093

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.
11598

11699
---
117100

118-
## 🔧 **Under the Hood**
101+
## 🙋‍♂️ Join the Beta!
119102

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)
124106

125107
---
126108

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
139110

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)
149115

150116
---
151117

152-
## 🤝 **Contribute**
118+
## 📄 License
153119

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).
158121

159122
---
160123

161-
## 🙏 **Acknowledgements**
124+
## 🙋‍♂️ Support & Community
162125

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)
164129

165130
---
166131

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>

docs/_static/images/logo.png

-226 KB
Loading

kitchenai/apps/views/playground/chat.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -137,18 +137,16 @@ async def chat_send(request: HttpRequest):
137137
},
138138
)
139139

140-
#making this function sync for now
141-
def clear_chat_history(request: HttpRequest) -> HttpResponse:
140+
async def clear_chat_history(request: HttpRequest) -> HttpResponse:
142141
"""Clear the chat history from the session."""
143-
if 'chat_history' in request.session:
144-
del request.session['chat_history']
145-
request.session.modified = True
142+
await request.session.aset('chat_history', [])
143+
request.session.modified = True
146144

147145
# Return empty state template for HTMX
148146
return TemplateResponse(
149147
request,
150148
"apps/playground/includes/empty_chat.html",
151149
{
152-
"selected_bento": request.session.get('selected_bento')
150+
"selected_bento": await request.session.aget('selected_bento')
153151
}
154152
)

0 commit comments

Comments
 (0)