Base search engine integration and utilities for the LlamaAI Ecosystem
Project description
llama-find
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
- Entry Point: Users or client applications interact via the API or web server.
- API Layer: Handles incoming requests and routes them.
- Search Agent: Manages the query lifecycle and interacts with core components.
- Core Processing: Orchestrates the search, potentially leveraging MLX and caching.
- Search Engine Interface: Abstracts interactions with different backend search engines.
- 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.
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 llamafind-0.1.0.tar.gz.
File metadata
- Download URL: llamafind-0.1.0.tar.gz
- Upload date:
- Size: 34.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
608120b8e15bdd8a57d974102bf1854ba5c4e1754d15a4beb3f33d8cc3b88a5b
|
|
| MD5 |
7d583f26dda912c54516e16016130193
|
|
| BLAKE2b-256 |
25ba434568328ea29848765b6702bcf473990b03bc04eb42e9e465ef6474bed1
|
File details
Details for the file llamafind-0.1.0-py3-none-any.whl.
File metadata
- Download URL: llamafind-0.1.0-py3-none-any.whl
- Upload date:
- Size: 36.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7dafdc9a80e5c2f814840aacbfa12757e9245dfde86b1ae00a1406626d797fdd
|
|
| MD5 |
8d02e2de2505575719e4929f4e0500bd
|
|
| BLAKE2b-256 |
c4e034e513a9a2eb8cf645ee4f20e57085fc089cca6a951e65815edef9a5563f
|