Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.8%) to scientific vocabulary
Repository
Agentic, but intuitive
Basic Info
- Host: GitHub
- Owner: valentin-dion
- License: apache-2.0
- Language: Python
- Default Branch: main
- Size: 2 MB
Statistics
- Stars: 12
- Watchers: 0
- Forks: 3
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
About
Hi, I'm Valentin, I tinker with agentic.
I want to automate myself as a senior software engineer.
This repo is about my Framework Agentix and what I'll build with it.
You can hire me !
My current full time job is to work on this repo until I'm hired as an agentic engineer/researcher.
Want to hire me (or just chat) ? : v@lentin.fr
Cite me (for some reason): CITATION.cff
What I'm currently working on
Agentix
Low boilerplate functional agentic.
TL;WR
For an implementation walktrhough go here then here
Motivations
My approach has some inspiration from Nuxt. If you don't know Nuxt, it's low code, It's an extreme example of "hiding the complexity". You can implement anything and the learning curve is sharp.
What motivates me coding my own framework ?
I want to hide myself as much complexity as possible when I implement agents.
I want to be able to write arbitrary agentic pipelines with the minimum amount of code.
I want an intuitive formalism to implement agentic pipelines with clear control flow.
Foreshadowing a future version
- File (and by extension, lib) structures are for humans. I want my framework LLM friendly.
Limitations of Agentix
- The approach is not made for speed. We want the smartest agents, not the most performant
- Everything runs sequentially
- If your project involves RAG more than Agentic, DSPy might be a better fit.
- As of right now, Agentix only handles text (though embeddings and other modalities will be considered in a future version)
- If you're looking for a mature project for prod environments, we're not there yet.
Python Magics and other smelly code
I use python magics to auto-import my agents, middlewares, tools. If, somewhere within rightly name directories, a .py file exists and contains: ```python from agentix import tool
@tool def say_hello(name:str) -> str: return f'hello {name}' ```
Then anywhere else, you can just use it : ```python from agentix import Tool
print(Tool'say_hello') ```
Theory
Agentix's assumptions
Agents are functions
Agents are stacks of middlewares
Time to get our hands dirty
Agents are stacks of middlewares
Agentix tools
Magic import
In agentix, agent initialization: ```python from agentix import Agent
Agent('Bob','prompthisto|bobrouter') ```
needs to be executed, not exported. If the code is ran, the agent will exist and be executable anywhere ```python from agentix import Agent
user_input = input('your input to Bob') print(Agent'Bob')
```
To be imported, a .py file only has to exist somewhere under the directories: agents, tools or middlewares
```
📂MyProject
├📂agents
│ └📄fooBar.py
├📂tools
│ ├📂any
│ │├📂depth
│ ││└📄BarFOO.py
├📂middlewares
│ └📄BazBah.py
```
Install
bash
git clone https://github.com/valentin-dion/Agentix.git
cd Agentix
pip install -e .
create new agent
bash
agentix create MyAgent
it will create all the boilerplate you need to create an agent.
AKA this file structure: ``` 📂 agents 📂 MyAgent ├ 📂 agents │ └ 📄 MyAgent.py ├ 📂 middlewares │ └ 📄 MyAgent_loop.py ├ 📂 prompts │ └ 📄 MyAgent.conv ├ 📂 tests └ 📂 tools
```
run agent
bash
agentix run MyAgent
serve agent with gradio
TODO
Create your first agents
ShellGPT
an agent that handles the linux shell for you. (or a linux console you can talk to in natural language)
ShellGPT Walkthrough (Easy)
LTM (WIP)
An conversationnal agent with Long Term Memory (Intermediate)
Agentic Debugger (TODO)
Frontend component factory (TODO)
Agent that codes its own tools (TODO)
Components factory
Debug
Serve
Owner
- Name: valentin-dion
- Login: valentin-dion
- Kind: organization
- Repositories: 1
- Profile: https://github.com/valentin-dion
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this software in your work, please cite it using these metadata."
title: "Agentix: Framework for Building Cognitive Agents"
version: 0.1.4
date-released: 2024-03-01
authors:
- family-names: "DION"
given-names: "Valentin"
email: "v@lentin.fr"
license: "MIT"
repository-code: "https://github.com/valentin-dion/Agentix"
GitHub Events
Total
- Watch event: 8
- Fork event: 3
Last Year
- Watch event: 8
- Fork event: 3
Dependencies
- python 3.8-slim build
- autoprefixer ^10.4.19 development
- postcss ^8.4.38 development
- tailwindcss ^3.4.3 development
- nuxt ^3.11.2
- vue ^3.4.21
- vue-router ^4.3.0
- actions/checkout v2 composite
- actions/setup-python v2 composite
- pypa/gh-action-pypi-publish master composite
- fire *
- rich *
- toolz *