Skip to main content

KISS AI Stack's AI Agent Builder - Simplify AI Agent Development

Project description

kiss-ai-stack - Core

KISS AI Stack's AI Agent Builder

Welcome to the core of the KISS AI Stack! This module helps you build AI agents effortlessly, using a simple YAML configuration file. With this core, you don't need to worry about boilerplate code. It is designed to keep things minimal and efficient, following the KISS principle (Keep It Simple, Stupid).

Features:

  • Build AI agents quickly: Just provide a YAML file to configure the agent.
  • Minimal dependencies: Built using simple, vanilla vendor libraries.
  • Tool classification: Easily configure tools for your agent to handle specific tasks.
  • Supports RAG and prompt-based models: Choose the model type that suits your needs.

Installation

To install the core module, run:

pip install kiss-ai-stack-core

Example Configuration

Below is an example YAML configuration for setting up an AI agent with different tools:

agent:
  classifier: # Required for tool classification
    name: classifier
    role: classify tools for given queries
    kind: prompt  # Choose from 'rag' or 'prompt'
    ai_client:
      provider: openai
      model: gpt-4
      api_key: <your-api-key>
      
  tools:
    - name: general_queries
      role: process other queries if no suitable tool is found.
      kind: prompt
      ai_client:
        provider: openai
        model: gpt-4
        api_key: <your-api-key>
        
    - name: document_tool
      role: Process documents and provide answers based on them.
      kind: rag  # Retrieval-Augmented Generation
      embeddings: text-embedding-ada-002
      ai_client:
        provider: openai
        model: gpt-4
        api_key: <your-api-key>

  vector_db:
    provider: chroma
    kind: in_memory  # Choose in-memory or persistent storage options.

Example Python Usage

Once the core is installed, you can use it to build and interact with your AI agent as shown in the example below:

from kiss_ai_stack.core.agent import Agent

try:
    # Initialize the AI agent stack
    agent = Agent()
    agent.initialize_stack()  # Set up the agent using the provided configuration

    # Store documents for the agent to process
    agent.store_documents(['./yourfile.pdf'])

    # Process a query and get the answer
    print(agent.process_query('Give a summary about yourfile contents.').answer)

except Exception as ex:
    print(f"An error occurred: {ex}")
    raise ex

How It Works:

  1. Agent Setup: The agent is initialized with the provided configuration (defined in the YAML file). The configuration specifies which AI clients and tools to use.
  2. Tools: Each tool is defined by its type (prompt or rag) and is linked to an AI client, such as OpenAI’s GPT-4. Tools handle different tasks like document processing or classifying queries.
  3. Vector DB: The vector_db section allows you to configure the database for storing and retrieving document embeddings. Currently, Chroma is supported as an in-memory solution.

Documentation:

  • AI Client: You can configure the AI client with the provider, model, and API key for any supported service like OpenAI.
  • Tools: Define the tools that the agent will use, such as a general-purpose query tool or a document processing tool.
  • Vector Database: The vector_db section defines how the agent stores document embeddings and retrieves them for RAG-based tasks.

Contributing

We welcome contributions! If you'd like to improve this stack, feel free to submit pull requests or open issues for discussion.

License

This project is licensed under the MIT License - see the LICENSE file for details.

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

kiss_ai_stack_core-0.1.0a4.tar.gz (20.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kiss_ai_stack_core-0.1.0a4-py3-none-any.whl (28.4 kB view details)

Uploaded Python 3

File details

Details for the file kiss_ai_stack_core-0.1.0a4.tar.gz.

File metadata

  • Download URL: kiss_ai_stack_core-0.1.0a4.tar.gz
  • Upload date:
  • Size: 20.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.0 CPython/3.12.7

File hashes

Hashes for kiss_ai_stack_core-0.1.0a4.tar.gz
Algorithm Hash digest
SHA256 f334adef7711be8b6a8e46e498a3a0b6bfbfc2c133c8c5b260e46abc57bab35c
MD5 ddb4da67f43a645843c0676301636cb4
BLAKE2b-256 bf152cfc7450d2ebf1c897969d0fadd5c038413c6e914cfe912b7a0e646eefef

See more details on using hashes here.

File details

Details for the file kiss_ai_stack_core-0.1.0a4-py3-none-any.whl.

File metadata

File hashes

Hashes for kiss_ai_stack_core-0.1.0a4-py3-none-any.whl
Algorithm Hash digest
SHA256 0dd982daee174a56a9fd46600bcc098571f1554b2d74c534e93e57a4d5b67f6e
MD5 e30afc3d981491c35df0e8e61b27ef5d
BLAKE2b-256 ba69180204e699d83dc3774a7cf66023bbce72f2235554f5649d8127c230b0dc

See more details on using hashes here.

Supported by

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