RAPTOR
RAPTOR (Rapid AI-Powered Text and Object Recognition) is an AI-native Content Insight Engine that transforms passive media storage into an intelligent knowledge platform through automated analysis, semantic search, and actionable insights. RAPTOR reducing manual tagging by 85% and making content discovery 10x faster.
Install / Use
/learn @DHT-AI-Studio/RAPTORREADME
RAPTOR AI Framework
<p align="center"> <img src="RAPTOR_LOGO.png" alt="RAPTOR Logo" width="200"/> </p> <p align="center"> <strong>Rapid AI-Powered Text and Object Recognition</strong><br> Open-Source Content Insight Engine for Enterprise AI Applications </p> <p align="center"> <a href="https://github.com/DHT-AI-Studio/RAPTOR/blob/main/LICENSE"> <img src="https://img.shields.io/badge/License-Apache%202.0-blue.svg" alt="License"> </a> <a href="https://github.com/DHT-AI-Studio/RAPTOR/releases"> <img src="https://img.shields.io/badge/version-Aigle%200.1%20(Beta)-orange.svg" alt="Version"> </a> <img src="https://img.shields.io/badge/status-Beta-yellow.svg" alt="Status"> <img src="https://img.shields.io/badge/python-3.8%2B-blue.svg" alt="Python"> <a href="https://github.com/DHT-AI-Studio/RAPTOR/stargazers"> <img src="https://img.shields.io/github/stars/DHT-AI-Studio/RAPTOR?style=social" alt="GitHub stars"> </a> <a href="https://github.com/DHT-AI-Studio/RAPTOR/network/members"> <img src="https://img.shields.io/github/forks/DHT-AI-Studio/RAPTOR?style=social" alt="GitHub forks"> </a> </p> <p align="center"> <a href="#-about-raptor">About</a> • <a href="#-features">Features</a> • <a href="#-installation">Installation</a> • <a href="#quick-start">Quick Start</a> • <a href="#-documentation">Documentation</a> • <a href="#-contributing">Contributing</a> • <a href="https://dhtsolution.com/">Website</a> </p>RAPTOR is an advanced AI framework developed by the DHT Taiwan Team at DHT Solutions.
🚀 Current Release
Aigle 0.1 - First Community Beta Release
This is the initial open-source release of the RAPTOR framework, codenamed "Aigle". We're excited to share this with the community and look forward to your feedback and contributions.
🧪 Aigle 0.1 - Evaluation and Testing API
To help developers get started with the RAPTOR framework quickly and easily, we've deployed a test run API on DHT's development infrastructure. This evaluation API allows developers to:
- Test and evaluate RAPTOR capabilities without setting up infrastructure
- Develop AI applications using the RAPTOR framework with zero deployment overhead
- Utilize DHT resources for testing and development purposes
- Prototype faster by accessing pre-configured AI services
This is an excellent way to explore RAPTOR's features, build proof-of-concepts, and validate your use cases before deploying your own infrastructure.
🔗 Access the Evaluation API:
http://raptor_open_0_1_api.dhtsolution.com:8012/
For detailed API documentation, usage examples, and access instructions, please visit the link above.
Note: This is a development environment intended for evaluation and testing purposes. For production deployments, please refer to the Installation and Development sections below.
📋 Table of Contents
- About RAPTOR
- Features
- Installation
- Quick Start
- Documentation
- Community & Support
- Contributing
- License
- Acknowledgments
🎯 About RAPTOR
RAPTOR (Rapid AI-Powered Text and Object Recognition) is a Content Insight Engine that represents a paradigm shift in digital asset management, transforming passive media storage into an intelligent knowledge platform. By leveraging cutting-edge AI technologies including large language models, vector search, and semantic understanding, RAPTOR enables organizations to unlock the full value of their media assets through automated analysis, intelligent search, and actionable insights.
Business Value Proposition
- 85% reduction in manual content tagging and metadata generation
- 10x faster content discovery through semantic search
- 60% improvement in content reuse and operational efficiency
- Real-time insights from video, audio, and document content
- Enterprise-grade security, scalability, and integration capabilities
Strategic Differentiators
- AI-Native Architecture: Built from the ground up around LLM orchestration and vector search
- Multi-Modal Understanding: Unified analysis across video, audio, image, and text
- Semantic Intelligence: Context-aware search that understands intent, not just keywords
- Open + Enterprise Model: Open-source core with premium enterprise features
- Production-Ready: Kubernetes-native with auto-scaling, fault tolerance, and 99.9% uptime
✨ Features
Version Aigle 0.1
This first community release includes:
Core Capabilities
- Multi-Modal Content Analysis: Process and understand video, audio, images, and text
- Semantic Search Engine: Context-aware search using vector embeddings
- AI-Powered Metadata Generation: Automated tagging and content classification
- LLM Orchestration: Flexible integration with multiple language models
- Vector Database Integration: High-performance similarity search and retrieval
Intelligence Features
- Content Understanding: Extract insights from unstructured media
- Entity Recognition: Identify people, places, objects, and concepts
- Sentiment Analysis: Understand emotional context in content
- Topic Modeling: Automatic categorization and clustering
- Temporal Analysis: Track content evolution over time
Enterprise Ready
- Scalable Architecture: Kubernetes-native deployment
- API-First Design: RESTful APIs for seamless integration
- Security: Enterprise-grade authentication and authorization
- Monitoring: Built-in observability and logging
- Extensible: Plugin architecture for custom processors
For detailed release notes, see CHANGELOG.md.
📦 Installation
# Clone the repository
git clone https://github.com/DHT-AI-Studio/RAPTOR.git
cd RAPTOR/Aigle/0.1
# Create virtual environment (recommended)
conda create -n CIE python=3.10
conda activate CIE
# Install required dependencies:
pip install -r requirements.txt
Development
Step 1.
cd raptor
chmod +x check-services.sh deploy.sh logs.sh rollback.sh stop-all.sh tag-backup.sh
./deploy.sh
Step 2.Deploy service
-
Check container status
./check-services.sh -
Test API connectivity
# Modellifecycle 服務 curl -s http://192.168.157.165:8086/docs # Assetmanagement curl -s http://192.168.157.165:8010/docs -
View service logs
./logs.sh <service_name>
Quick Start
-
Create a new user and assign a new branch to the user
curl -X 'POST' \ 'http://192.168.157.165:8086/users' \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "username": "user1", "password": "dht888888", "password_hash": "", "branch": "", "permissions": [ "upload", "download", "list" ] }' -
Create a new access token for the user
curl -X 'POST' \ 'http://192.168.157.165:8086/token' \ -H 'accept: application/json' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'grant_type=password&username=user1&password=dht888888&scope=&client_id=string&client_secret=********' -
Access RedisInsight 🔗 http://192.168.157.165:5540
Add a new connection:
- Connection Type: Redis Cluster
- Host:
redis1 - Port:
7000 - Name:
Redis Cluster - Authentication:
dht888888
-
Check if the local Ollama model includes qwen2.5:7b
ollama listIf not present
ollama pull qwen2.5:7b -
Register MLflow with local Ollama
curl -X 'POST' \ 'http://192.168.157.165:8010/models/register_ollama' \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "local_model_name": "qwen2.5:7b", "model_params": 7, "registered_name": "qwenforsummary", "set_priority_to_one": false, "stage": "production", "task": "text-generation-ollama", "version_description": "Register qwen2.5:7b local model" }' -
Check if the registration was successful
curl -X 'GET' \ 'http://192.168.157.165:8010/models/registered_in_mlflow?show_all=false' \ -H 'accept: application/json' -
Start audio/video/image/document service
9.1 Create Kafka topics:cd path/to/kafka chmod +x create_topic.sh sudo ./create_topic.sh9.2 Starting Services
cd services chmod +x start_services.sh ./start_services.sh9.3 Check if all services are still running
./check_services.sh -
Produce a test requests topic
cd /path/to/kafka/test_service python test.py -
View Service Logs
cd path/to/kafka tail -f service_name.logAvailable service names include:
document_orchestrator_service,document_analysis_service,document_summary_service,document_save2qdrant_service, etc. You can replacedocumentwithaudio,video, orimagebased on the required service, for example:audio_orchestrator_service,video_analysis_service,image_summary_service, etc -
Check Redis Data
sudo docker exec -it redis-kafka_dev redis-cli --raw GET "document_orchestrator:correlation_id" GET "video_orchestrator:correlation_id" GET "audio_orchestrator:correlation_id" GET "image_orchestrator:correlation_id"Note: Replace service_name and correlation_id with actual values.
-
Use the Qdrant Search API to query data
(8821/video_search, 8822/audi
