Skip to main content

llama-find

PyPI version License Python Version CI Status

Llama Find (llama-find) is a sophisticated search and information retrieval toolkit within the LlamaSearch AI ecosystem. It provides agents capable of querying multiple underlying search engines, processing results, and delivering synthesized information through a unified API. It includes support for MLX optimizations.

Key Features

  • Agent-Based Search: Utilizes intelligent agents to manage search queries.
  • Multi-Engine Support: Integrates with various search backends (defined in search_engines/).
  • API Access: Exposes functionality through a comprehensive API (api.py).
  • Web Interface (Optional): Includes components for a basic web server (web_server.py).
  • MLX Compatibility: Offers potential performance benefits on compatible hardware (mlx_compat.py).
  • Caching: Implements caching (cache/) to improve response times.
  • Configurable: Allows customization via configuration files (config.py, config/).

Installation

pip install llama-find
# Or install directly from GitHub for the latest version:
# pip install git+https://github.com/llamasearchai/llama-find.git

Usage

(Usage examples for the API client or web interface will be added here based on the final implementation.)

# Placeholder for Python client usage
# from llama_find import FinderClient

# client = FinderClient(config_path="path/to/config.yaml")
# results = client.search("your query here", engine="auto")
# print(results)

Architecture Overview

graph TD
    A[User / Client Application] --> B{API Layer (api.py / web_server.py)};
    B --> C{Search Agent (agents/)};
    C --> D[Core Processing (core.py)];
    D --> E{Search Engine Interface};
    E --> F[Search Engine 1];
    E --> G[Search Engine 2];
    E --> H[...];
    F --> I((External Search Service));
    G --> I;
    D --> J[Cache System (cache/)];
    D --> K[MLX Compatibility Layer (mlx_compat.py)];
    B --> L[Configuration (config.py, config/)];
    C --> L;
    D --> L;

    style D fill:#f9f,stroke:#333,stroke-width:2px
    style J fill:#ccf,stroke:#333,stroke-width:1px
  1. Entry Point: Users or client applications interact via the API or web server.
  2. API Layer: Handles incoming requests and routes them.
  3. Search Agent: Manages the query lifecycle and interacts with core components.
  4. Core Processing: Orchestrates the search, potentially leveraging MLX and caching.
  5. Search Engine Interface: Abstracts interactions with different backend search engines.
  6. Cache/Config: Caching improves speed; configuration allows customization.

Configuration

(Details on configuring search engines, API keys, caching, etc., will be added here.)

Development

Setup

# Clone the repository
git clone https://github.com/llamasearchai/llama-find.git
cd llama-find

# Install in editable mode with development dependencies
pip install -e ".[dev]"

Testing

pytest tests/

Contributing

Contributions are welcome! Please refer to CONTRIBUTING.md and submit a Pull Request.

License

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

Metadata

Release files for llamafind 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for llamafind 0.1.0
File Size Uploaded
llamafind-0.1.0.tar.gz 34.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for llamafind 0.1.0
File Interpreter ABI Platform
llamafind-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 71.2 kB

Release files / llamafind-0.1.0.tar.gz

Download URL llamafind-0.1.0.tar.gz
Size 34.9 kB
Tags Source
SHA-256 checksum
How to use checksums
608120b8e15bdd8a57d974102bf1854ba5c4e1754d15a4beb3f33d8cc3b88a5b
BLAKE2b-256 checksum
How to use checksums
25ba434568328ea29848765b6702bcf473990b03bc04eb42e9e465ef6474bed1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3

Release files / llamafind-0.1.0-py3-none-any.whl

Download URL llamafind-0.1.0-py3-none-any.whl
Size 36.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7dafdc9a80e5c2f814840aacbfa12757e9245dfde86b1ae00a1406626d797fdd
BLAKE2b-256 checksum
How to use checksums
c4e034e513a9a2eb8cf645ee4f20e57085fc089cca6a951e65815edef9a5563f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page