AI prompts
base on The most reliable AI agent framework that supports MCP.
<img src="https://github.com/user-attachments/assets/cb6539cc-cea2-4a1c-8c26-762868828ac9" >
<br>
<br>
<a name="readme-top"></a>
<div align="center">
</div>
<p>
<a href="https://discord.gg/dNKGm4dfnR">
<img src="https://img.shields.io/badge/Discord-Join-7289DA?logo=discord&logoColor=white">
</a>
<a href="https://twitter.com/upsonicai">
<img src="https://img.shields.io/twitter/follow/upsonicai?style=social">
</a>
<a href="https://trendshift.io/repositories/10584" target="_blank"><img src="https://trendshift.io/api/badge/repositories/10584" alt="unclecode%2Fcrawl4ai | Trendshift" style="width: 100px; height: 20px;"
<a href="https://www.python.org/">
<img src="https://img.shields.io/badge/Made%20with-Python-1f425f.svg" alt="Made_with_python">
</a>
</p>
# Introduction
Upsonic is an AI agent development framework used by fintech leaders and tested at their scale against attacks and reasoning puzzles.
```bash
pip install upsonic
```
```python
from upsonic import Task, Agent
task = Task("Who developed you?")
agent = Agent(name="Coder")
agent.print_do(task)
```
<br>
<br>
# Guides | 7 Step
See our guides to jumpstart your AI agent within minutes. We design them to onboard the new users to the framework.
1. [Create an Agent](https://docs.upsonic.ai/guides/1_create_a_task)
2. [Create a Task](https://docs.upsonic.ai/guides/2_create_an_agent)
3. [Add a Safety Engine](https://docs.upsonic.ai/guides/3_add_a_safety_engine)
4. [Add a Tool](https://docs.upsonic.ai/guides/4_add_a_tool)
5. [Add an MCP](https://docs.upsonic.ai/guides/5_add_an_mcp)
6. [Integrate a Memory](https://docs.upsonic.ai/guides/6_integrate_a_memory)
7. [Creating a Team of Agents](https://docs.upsonic.ai/guides/7_creating_a_team_of_agents)
<br>
# Why Upsonic?
Upsonic provides a feature set to build safety-first, high-performance AI Agents. It helps you go to production without spending hours on research and boilerplate. These are the main parts:
- **Safety First**: Upsonic provides its own **Safety Engine** that manages User and Agent messages and checks their status for your policies. You can customize it by designing new **rule** and **action** sets.
- **Direct LLM Calls**: In Upsonic we support the same interface for your whole AI operations. You don't need to go with another framework to complete your **small jobs**.
- **Structured Outputs**: Upsonic sets agent outputs to make them **Python objects**. So you can integrate your application without struggling with **LLM outputs**.
- **Built-in RAG and Memory**: In Upsonic you can create world class . We support the Agentic RAG, Memory Logics and providers of them.
- **Customizable Memory Logics**: You are able to create **memories** that focus on **user**, **event** and **chat**. Also you are free to use **Local** and **Cloud databases**.
- **Agent Teams**: Upsonic provides the most **reliable** agent team architecture with memory, context management and leader agent.
- **FastAPI Compatible Agents**: You can turn your agents into production-ready APIs
- **Tracking the Executions**: You can use <u>Upsonic AgentOS</u> to get the execution history, monthly costs andresponse times of your agents.
- **Deploy at scale**: Upsonic agents work in the greatest and fastest-growing fintech companies and scaling is available on <u>Upsonic AgentOS</u>.
# 📙 Documentation
You can access our documentation at [docs.upsonic.ai](https://docs.upsonic.ai/) All concepts and examples are available there.
<br>
## Telemetry
We use anonymous telemetry to collect usage data. We do this to focus our developments on more accurate points. You can disable it by setting the UPSONIC_TELEMETRY environment variable to false.
```python
import os
os.environ["UPSONIC_TELEMETRY"] = "False"
```
<br>
<br>
", Assign "at most 3 tags" to the expected json: {"id":"12515","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"