Skip to main content

Core functionality for FridonAI

Project description

FridonAI Core

FridonAI Core is the foundational package for building AI-driven chatbot platforms, specifically designed for the crypto world. It provides a modular and extensible architecture for creating powerful, domain-specific AI assistants.

Features

  • Modular Plugin Architecture: Easily extend functionality through a well-structured plugin system.
  • Dynamic Request Routing: Efficiently navigate user requests to relevant plugins.
  • Blockchain Utilities: Built-in support for blockchain-related operations.

Installation

Install the package using pip:

pip install fridonai-core

Usage

Here's a basic example of how to use FridonAI Core components:

from fridonai_core.plugins import BasePlugin, BaseToolInput
from fridonai_core.plugins.utilities import BaseUtility
from fridonai_core.plugins.tools import BaseTool

from fridonai_core.graph import generate_response

class TestUtility(BaseUtility):
    async def arun(self, *args, **kwargs) -> str:
        return "You are the Superman!"
    
class TestToolInput(BaseToolInput):
    pass


TestTool = BaseTool(
    name="test-tool",
    description="Use this tool to answer any questions.",
    args_schema=TestToolInput,
    utility=TestUtility(),
    examples=[],
)

class TestPlugin(BasePlugin):
    name: str = "Test"
    description: str = "Use this plugin to answer any questions."
    tools: list[BaseTool] = [TestTool]


rs = await generate_response(
    "Who am I?", 
    plugins=[TestPlugin()], 
    memory='sqlite',
    config={"thread_id": "test"}, 
    return_used_agents=False
)

Plugin Structure

FridonAI Core uses a hierarchical structure for plugins:

  1. Plugins: Extend BasePlugin
  2. Tools: Extend BaseTool
  3. Utilities: Extend BaseUtility

Specialized utilities are available for specific use cases:

  • BlockchainUtility: For blockchain operations
  • RemoteUtility: For making remote API calls
  • LLMUtility: For language model interactions

Graph-based Processing

The core includes a Graph component that manages conversation flow and agent interactions. It's responsible for:

  • Building networks of LLM Agents (Plugins)
  • Routing messages between agents
  • Managing agent states
  • Creating chains with prompts and models
  • Parsing outputs
  • Composing independently implemented plugins

Documentation

For more detailed usage instructions and API documentation, please visit our main README.

Contributing

We welcome contributions!

Stay Connected

Follow us on Twitter for the latest updates and announcements:

Twitter Follow

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fridonai_core-0.0.11.tar.gz (15.0 kB view hashes)

Uploaded Source

Built Distribution

fridonai_core-0.0.11-py3-none-any.whl (22.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page