Agentics is a Python framework that provides structured, scalable, and semantically grounded agentic computation.
Project description
Agentics
Transduction is all you need
Agentics is a Python framework that provides structured, scalable, and semantically grounded agentic computation. It enables developers to build AI-powered pipelines where all operations are based on typed data transformations, combining the power of Pydantic models and LLMs with the flexibility of asynchronous execution.
Getting started
Learn how to install Agentic, set up your environment, and run your first logical transduction. Getting Started
Authors
- Principal Investigator
- Alfio Massimiliano Gliozzo, IBM Research, gliozzo@us.ibm.com
- Core Contributors:
- Junkyu Lee, IBM Research, Junkyu.Lee@ibm.com
- Naweed Aghmad Khan, IBM Research, naweed.khan@ibm.com
- Nahuel Defosse, IBM Research, nahuel.defosse@ibm.com
- Christodoulos Constantinides, IBM Watson, Christodoulos.Constantinides@ibm.com
- Mustafa Eyceoz, RedHat, Mustafa.Eyceoz@partner.ibm.com
Agentics is an implementation of Logical Transduction Algebra, described in
- Alfio Gliozzo, Naweed Khan, Christodoulos Constantinides, Nandana Mihindukulasooriya, Nahuel Defosse, Junkyu Lee. Transduction is All You Need for Structured Data Workflows. August 2025, arXiv:2508.15610
We welcome new AG entusiasts to extend this framework with new applications and extension to the language.
🚀 Key Features
Typed Agentic Computation: Define workflows over structured types using standard Pydantic schemas.
Logical Transduction (<<
): Transform data between types using LLMs with few-shot examples, tools, and memory.
Async Mapping and Reduction: Apply async mapping (amap
) and aggregation (areduce
) functions over datasets.
Batch Execution & Retry: Automatically handles batch-based asynchronous execution with graceful fallback.
Domain Customization
- Prompt Templates Customize prompting behavior and add ad-hoc instructions
- Memory Augmentation: Use retrieval-augmented memory to inform transduction.
Built-in Support for Tools: Integrate LangChain tools or custom functions.
Tutorial
Notebook | Description |
---|---|
LLMs | Basics |
Agentic Basics | Step by step guide illustrating how to make a new AG, access and print its content, import and export it to files |
Transduction | Demonstrate the use of logical transduction (<< ) in Agentics |
Amap Reduce | Try out MapReduce in Agentics to scale out |
MCP Tools |
🚀 Documentation
👉 Getting Started: Learn how to install Agentic, set up your environment, and run your first logical transduction.
🧠 Agentics: Explore how Agentics wraps pydantic
models into transduction-ready agents.
🔁 Transduction: Discover how the <<
operator implements logical transduction between types and how to control its behavior.
🛠️ Tools: Learn how to integrate external tools (e.g., LangChain, CrewAI) to provide access to external data necessary for logical transduction.
📘 Example Usage
from agentics import AG
from pydantic import BaseModel
class Answer(BaseModel):
answer: str
justification: str
confidence: float
# Instantiate an Agentics object with a target type
qa_agent = AG(atype=Answer)
# Perform transduction from text prompts
qa_agent = await (qa_agent << [
"Who is the president of the US?",
"When is the end of the world predicted?",
"This is a report from the US embassy"
])
# Access structured answers
for result in qa_agent.states:
print(result.answer, result.confidence)
🧠 Conceptual Overview
Agentics models workflows as transformations between typed states. Each instance of Agentics includes:
atype
: A Pydantic model representing the schema.
states
: A list of objects of that type.
Optional llm
, tools
, prompt_template
, memory
.
Operations:
amap
(func): Applies an async function over each state.
areduce
(func): Reduces a list of states into a single value.
<<
: Performs logical transduction from source to target Agentics.
🔧 Advanced Usage
Customizing Prompts
agent.prompt_template = """ You are an assistant that extracts key information. Please respond using the format {answer}, {justification}, {confidence}. """
📚 Documentation
Full documentation and examples are available at:
🧪 Tests
Run all tests using:
uv run pytest
Examples
Run all scripts in example folder using uv
uv run python examples/hello_world.py
$ 📄 License
Apache 2.0
👥 Authors
Developed by Alfio Gliozzo and contributors.
Contributions welcome!
Core team Alfio Gliozzo, Junkyu Lee, Naweed Aghmad, Nahuel Defosse, Christodoulos Constantinides, Mustafa Eyceoz and contributors.
Contributing
Your commit messages should include the line:
Signed-off-by: Author Name <authoremail@example.com>
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 agentics_py-0.1.2.tar.gz
.
File metadata
- Download URL: agentics_py-0.1.2.tar.gz
- Upload date:
- Size: 24.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.22
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
7f5d45e6312b30a3619e3437c970a2d998e378d3ee3f227a2e84afe0b22c72cd
|
|
MD5 |
e56f241fff8f8fbe7c002f3f149b191d
|
|
BLAKE2b-256 |
8d5bdadfbfbe33531c487500907072a5d8fc74f8a565c026849860f42208d7ed
|
File details
Details for the file agentics_py-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: agentics_py-0.1.2-py3-none-any.whl
- Upload date:
- Size: 27.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.22
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
f7e2cec14f686dad321ddf76ebf56116eb81437e19fa5af99dde687e237084a4
|
|
MD5 |
c7f0163c2c3dc7c89c274aab38a381ec
|
|
BLAKE2b-256 |
a4e34f73586f5692a63da859b55e693b879418ee6308752b099bc65b9c60354a
|