A flexible, plugin-based framework for building AI agents
Project description
Entity Framework ๐
Build Production-Ready AI Agents 10x Faster
๐ฏ Why Entity Framework?
Stop fighting with boilerplate. Start building intelligent agents.
Entity transforms AI development from a complex engineering challenge into simple, composable components. While other frameworks force you to write thousands of lines of coupled code, Entity's revolutionary plugin architecture lets you build production-ready agents in hours, not weeks.
# Traditional approach: 2000+ lines of code, 2-3 weeks
# Entity approach: This is it. Seriously.
from entity import Agent
agent = Agent.from_config("your_agent.yaml")
await agent.chat("") # Interactive intelligent agent with memory, tools, safety
๐ฅ What Makes Entity Different
| Feature | Traditional Frameworks | Entity Framework |
|---|---|---|
| Development Time | 2-3 weeks | 2-3 days |
| Lines of Code | 2000+ lines | 200 lines |
| Architecture | Monolithic, coupled | Plugin-based, modular |
| Configuration | Code changes required | YAML-driven |
| Testing | Complex integration tests | Simple unit tests |
| Team Collaboration | Sequential development | Parallel plugin development |
| Maintenance | Fragile, risky changes | Isolated, safe updates |
| Production Ready | DIY monitoring/safety | Built-in observability |
โก 30-Second Quickstart
# Install Entity
pip install entity-core
# Run your first agent
python -c "
from entity import Agent
from entity.defaults import load_defaults
agent = Agent(resources=load_defaults())
print('๐ค Agent ready! Try: Hello, tell me a joke')
"
That's it. You now have a production-ready AI agent with:
- ๐ง Local LLM (Ollama) or cloud APIs
- ๐พ Persistent memory with conversation history
- ๐ก๏ธ Built-in safety and error handling
- ๐ Automatic logging and monitoring
- ๐ง Zero configuration required
๐จ Progressive Examples
Hello World Agent (3 lines)
from entity import Agent
from entity.defaults import load_defaults
agent = Agent(resources=load_defaults())
response = await agent.chat("Hello!") # "Hi! How can I help you today?"
Agent with Custom Personality (5 lines)
from entity import Agent
agent = Agent.from_config("personality_config.yaml")
# YAML defines: role="You are a helpful Python tutor"
response = await agent.chat("Explain decorators") # Detailed Python tutorial
Agent with Tools (10 lines)
from entity import Agent
from entity.tools import WebSearchTool, CalculatorTool
agent = Agent.from_config("tools_config.yaml")
# YAML enables: web_search, calculator, file_operations
response = await agent.chat("Search for Python 3.12 features and calculate 15% of 200")
# Executes web search, performs calculation, provides comprehensive answer
Multi-Agent Collaboration (15 lines)
from entity import Agent, AgentOrchestrator
# Create specialized agents
researcher = Agent.from_config("researcher_config.yaml")
writer = Agent.from_config("writer_config.yaml")
reviewer = Agent.from_config("reviewer_config.yaml")
# Orchestrate workflow
orchestrator = AgentOrchestrator([researcher, writer, reviewer])
result = await orchestrator.execute("Write a technical blog post about Entity Framework")
# Researcher gathers info โ Writer creates post โ Reviewer refines โ Final result
Production Configuration (Complete system)
from entity import Agent
from entity.monitoring import setup_observability
# Production-ready agent with full observability
agent = Agent.from_config("production_config.yaml")
setup_observability(agent, metrics=True, alerts=True, tracing=True)
# YAML configures: clustering, load balancing, database, monitoring, safety filters
await agent.serve(host="0.0.0.0", port=8000) # Production API server
๐๏ธ The Entity Architecture
Entity's revolutionary 6-stage plugin pipeline transforms how you build AI applications:
The Pipeline Flow
๐ INPUT โ ๐ PARSE โ ๐ง THINK โ ๐ง DO โ โ REVIEW โ ๐ค OUTPUT
Stage Details
๐ Stage 1: INPUT
Receive and process incoming data
- Handles: Text, Files, Images, URLs, Voice, Data
- Plugins: Input Adapters
- Purpose: Accept any input format seamlessly
๐ Stage 2: PARSE
Understand and structure the input
- Handles: Language Analysis, Structure, Metadata
- Plugins: Parsers
- Purpose: Extract meaning and context
๐ง Stage 3: THINK
Reason about the task
- Handles: Context Synthesis, Planning, Strategy
- Plugins: Reasoning Engines
- Purpose: Decide best approach
๐ง Stage 4: DO
Execute actions and operations
- Handles: Tools, Search, Analysis, APIs
- Plugins: Tool Executors
- Purpose: Perform the actual work
โ Stage 5: REVIEW
Validate and ensure quality
- Handles: Quality, Safety, Compliance
- Plugins: Validators
- Purpose: Guarantee correct output
๐ค Stage 6: OUTPUT
Deliver results to users
- Handles: Reports, APIs, Dashboards
- Plugins: Output Formatters
- Purpose: Present results effectively
Each stage is customizable through plugins:
- ๐ Modular: One plugin = one responsibility
- ๐ Composable: Mix and match for any use case
- โ Testable: Unit test plugins independently
- โ๏ธ Configurable: YAML changes behavior, not code
- ๐ Reusable: Share plugins across projects
๐ Installation Options
Quick Install (Recommended)
pip install entity-core
With Optional Dependencies
# Web tools and advanced features
pip install "entity-core[web,advanced]"
# Development tools
pip install "entity-core[dev]"
# Everything
pip install "entity-core[all]"
Using UV (Fastest)
uv add entity-core
Using Poetry
poetry add entity-core
From Source
git clone https://github.com/Ladvien/entity.git
cd entity
pip install -e .
๐ Learning Path
๐ฑ Beginner (10 minutes)
- Quick Start - Your first agent in 5 minutes
- Basic Examples - Simple, working examples
- Core Concepts - Understanding the architecture
๐ฟ Intermediate (1 hour)
- Plugin Development - Build custom capabilities
- Configuration Guide - Master YAML workflows
- Production Patterns - Real-world applications
๐ฒ Advanced (1 day)
- Multi-Agent Systems - Complex workflows
- Performance Optimization - Scale to production
- Contributing - Join the community
๐ผ Real-World Use Cases
Customer Support Bot
# config/support_agent.yaml
plugins:
input: [text, email, chat]
knowledge: [company_docs, faq_database]
actions: [ticket_creation, escalation]
output: [formatted_response, internal_notes]
Code Review Agent
# config/code_reviewer.yaml
plugins:
input: [github_pr, file_diff, code_snippet]
analysis: [security_scan, style_check, complexity]
actions: [inline_comments, suggestions]
output: [review_summary, action_items]
Research Assistant
# config/researcher.yaml
plugins:
input: [research_query, document_upload]
sources: [web_search, academic_papers, internal_docs]
analysis: [fact_checking, synthesis, citation]
output: [report_generation, bibliography]
๐ Why Teams Choose Entity
๐ Startups: Ship Faster
- MVP in days: Plugin architecture accelerates development
- Easy pivoting: Swap plugins without rewriting core logic
- Cost effective: Local-first reduces API costs
๐ข Enterprises: Scale Safely
- Standardization: Consistent patterns across all AI projects
- Compliance ready: Built-in safety, auditing, monitoring
- Team productivity: Parallel development of isolated plugins
๐ Education: Learn Better
- Best practices: Plugin architecture teaches good software design
- Gradual complexity: Start simple, add features incrementally
- Real projects: Build agents that solve actual problems
๐ Resources & Community
๐ Documentation
- Full Documentation - Complete guides and API reference
- Examples Gallery - From "Hello World" to production systems
- Cookbook - Common patterns and recipes
๐ฌ Community
- GitHub Discussions - Q&A and feature requests
- GitHub Issues - Bug reports and feature tracking
๐ค Contributing
- Contribution Guide - How to help improve Entity
- Plugin Registry - Share and discover plugins
- Roadmap - What's coming next
- Governance - Project decision-making
๐ Performance & Benchmarks
Entity is designed for both developer productivity and runtime performance:
- ๐ 10x Development Speed: Plugin architecture eliminates boilerplate
- โก Low Latency: Optimized plugin execution pipeline
- ๐ Horizontal Scale: Stateless design supports clustering
- ๐พ Memory Efficient: Persistent storage with intelligent caching
- ๐ Observable: Built-in metrics, tracing, and debugging
See detailed benchmarks in docs/performance.md.
๐ก๏ธ Security & Privacy
Entity prioritizes security and privacy:
- ๐ Local First: Runs entirely on your infrastructure
- ๐ Secure by Default: Input validation, output sanitization
- ๐ก๏ธ Sandboxed Tools: Isolated execution environments
- ๐ Audit Trails: Comprehensive logging for compliance
- ๐ Secrets Management: Secure configuration and key handling
See our Security Policy for details.
โค๏ธ Acknowledgments
Entity Framework is built with love by the open-source community. Special thanks to:
- Core Contributors: List of contributors
- Inspiration: LangChain, AutoGen, CrewAI for pioneering agent frameworks
- Community: Our amazing GitHub community for feedback and contributions
- Sponsors: Organizations supporting Entity's development
๐ License
Entity Framework is released under the MIT License.
Ready to build the future of AI?
๐ Read the Docs โข ๐ Quick Start โข ๐ GitHub
Entity Framework: Build better AI agents, faster. ๐
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file entity_core-0.0.10.tar.gz.
File metadata
- Download URL: entity_core-0.0.10.tar.gz
- Upload date:
- Size: 48.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.3 CPython/3.13.3 Darwin/24.5.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35ba2efa0743dff5cb342f695597bdc70be14f696a0edeaa4d8eeab90375a133
|
|
| MD5 |
21eca6213c653e01492d6dd87b4b8e5f
|
|
| BLAKE2b-256 |
318e4e087d5aa1450a886b57995ad39d14e562b720b36bc6186bdf1041cec47d
|
File details
Details for the file entity_core-0.0.10-py3-none-any.whl.
File metadata
- Download URL: entity_core-0.0.10-py3-none-any.whl
- Upload date:
- Size: 67.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.3 CPython/3.13.3 Darwin/24.5.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9d3ec73b09b778afa34f53eb925cafc0d52072c48ff1f9d247b277adfd2c96d4
|
|
| MD5 |
2d5622c96381b728353d64caa16fe258
|
|
| BLAKE2b-256 |
68e423d585cecec5bfd517fe98553848683af1a5449195d0a9e877a01207b55d
|