tahamajs's picture
|
download
raw
9.9 kB
# CA5: Advanced Geometric Reasoning System
## سیستم پیشرفته استدلال هندسی
این پروژه یک سیستم جامع و پیشرفته برای استدلال هندسی است که از آخرین فناوری‌های هوش مصنوعی استفاده می‌کند.
## 🚀 ویژگی‌های کلیدی
### فناوری‌های پیشرفته
- **LangChain**: مدیریت عوامل و ابزارها
- **RAG (Retrieval-Augmented Generation)**: بازیابی تقویت شده با تولید
- **Gemini API**: مدل‌های پیشرفته Google
- **LangGraph**: گردش کارهای پیچیده
- **Vector Databases**: ChromaDB و FAISS
- **Advanced Evaluation**: ارزیابی جامع و تجسم
### قابلیت‌های حل مسئله
- **هندسه تحلیلی**: حل با استفاده از مختصات
- **هندسه ترکیبی**: حل با استفاده از قضایا
- **استدلال چندمرحله‌ای**: اثبات‌های پیچیده
- **پشتیبانی از زبان فارسی**: رابط کاربری فارسی
- **تجسم پیشرفته**: نمودارها و تصاویر هندسی
## 📁 ساختار پروژه
```
CA5_geometric_reasoning/
├── main.py # اسکریپت اصلی
├── experimental_system.py # سیستم تجربی کامل
├── config.yaml # تنظیمات سیستم
├── requirements.txt # وابستگی‌ها
├── src/ # کد منبع
│ ├── rag/ # ماژول RAG
│ │ └── knowledge_base.py # مدیریت پایگاه دانش
│ ├── agents/ # عوامل LangChain
│ │ └── geometry_agent.py # عامل حل هندسه
│ ├── tools/ # ابزارهای هندسه
│ │ └── geometry_tools.py # ابزارهای تخصصی
│ ├── workflows/ # گردش کارهای LangGraph
│ │ └── solving_workflow.py # گردش کار حل مسئله
│ └── utils/ # ابزارهای کمکی
│ ├── visualization.py # تجسم هندسی
│ └── evaluation.py # ارزیابی راه‌حل‌ها
├── data/ # داده‌ها
│ ├── knowledge_base/ # پایگاه دانش
│ └── vector_db/ # پایگاه داده برداری
├── results/ # نتایج
├── visualizations/ # تصاویر تولید شده
└── logs/ # فایل‌های لاگ
```
## 🛠️ نصب و راه‌اندازی
### پیش‌نیازها
- Python 3.9+
- Google Gemini API Key
- حداقل 8GB RAM
### نصب
1. **کلون کردن پروژه**
```bash
git clone <repository-url>
cd CA5_geometric_reasoning
```
2. **ایجاد محیط مجازی**
```bash
python -m venv venv
source venv/bin/activate # در Windows: venv\Scripts\activate
```
3. **نصب وابستگی‌ها**
```bash
pip install -r requirements.txt
```
4. **تنظیم API Key**
```bash
export GOOGLE_API_KEY="your_gemini_api_key_here"
```
5. **اجرای پروژه**
```bash
# اجرای سیستم اصلی
python main.py
# اجرای سیستم تجربی کامل
python experimental_system.py
```
## 🎯 استفاده
### مثال ساده
```python
from src.rag.knowledge_base import KnowledgeBaseManager
from src.agents.geometry_agent import GeometrySolverAgent
from src.tools.geometry_tools import GeometryTools
# راه‌اندازی سیستم
knowledge_base = KnowledgeBaseManager(config, embeddings, vector_store)
geometry_tools = GeometryTools(config, llm)
geometry_agent = GeometrySolverAgent(llm, memory, config)
# حل مسئله
problem = "در مثلث ABC، زاویه A = 60 درجه، AB = 5، AC = 7. طول BC را پیدا کنید."
solution = geometry_agent.solve_problem(problem, tools)
```
### مثال پیشرفته با RAG
```python
# جستجو در پایگاه دانش
relevant_docs = knowledge_base.query_knowledge_base("قضیه فیثاغورث")
# حل مسئله با RAG
rag_chain = ConversationalRetrievalChain.from_llm(
llm=llm,
retriever=knowledge_base.create_retriever(),
memory=memory
)
result = rag_chain.invoke({"question": problem})
```
## 🔬 آزمایش‌های تجربی
سیستم شامل آزمایش‌های جامع برای مقایسه روش‌های مختلف است:
### روش‌های حل مسئله
1. **Gemini Direct**: استفاده مستقیم از Gemini API
2. **LangChain Agent**: عامل هوشمند با ابزارها
3. **RAG Enhanced**: بازیابی تقویت شده
4. **LangGraph Workflow**: گردش کار پیچیده
### معیارهای ارزیابی
- **دقت**: صحت راه‌حل
- **کیفیت اثبات**: منطق ریاضی
- **کارایی زمانی**: سرعت حل
- **کیفیت توضیح**: وضوح راه‌حل
- **کالیبراسیون اعتماد**: اطمینان سیستم
## 📊 نتایج و تجسم
### نمودارهای تولید شده
- نمودارهای هندسی (مثلث، دایره، چندضلعی)
- نمودارهای مقایسه روش‌ها
- تجسم مراحل اثبات
- نمودارهای گردش کار
### گزارش‌های جامع
- گزارش ارزیابی عملکرد
- مقایسه روش‌های مختلف
- تحلیل کیفی راه‌حل‌ها
- پیشنهادات بهبود
## 🧪 مثال‌های مسئله
### مسائل مثلث
- محاسبه اضلاع و زاویه‌ها
- اثبات قضایای مثلث
- مسائل مساحت و محیط
### مسائل دایره
- خواص وتر و مماس
- زاویه‌های مرکزی و محیطی
- مسائل قدرت نقطه
### مسائل پیشرفته
- هندسه تحلیلی
- تبدیلات هندسی
- مسائل المپیادی
## 🔧 تنظیمات پیشرفته
### فایل config.yaml
```yaml
# تنظیمات Gemini API
ai_models:
gemini:
model_name: "gemini-1.5-pro"
temperature: 0.1
max_retries: 3
# تنظیمات RAG
rag:
vector_store:
type: "chromadb"
persist_directory: "./data/vector_db"
embeddings:
model_name: "sentence-transformers/all-MiniLM-L6-v2"
# تنظیمات عوامل
agents:
geometry_solver:
max_iterations: 15
temperature: 0.1
verbose: true
```
## 📈 عملکرد و بهینه‌سازی
### بهینه‌سازی‌های اعمال شده
- **Caching**: ذخیره نتایج میانی
- **Parallel Processing**: پردازش موازی
- **Memory Management**: مدیریت حافظه
- **Batch Processing**: پردازش دسته‌ای
### معیارهای عملکرد
- زمان حل مسئله
- استفاده از حافظه
- دقت راه‌حل‌ها
- کیفیت توضیحات
## 🐛 عیب‌یابی
### مشکلات رایج
1. **خطای API Key**: بررسی متغیر محیطی GOOGLE_API_KEY
2. **خطای حافظه**: کاهش batch_size در config
3. **خطای وابستگی**: نصب مجدد requirements.txt
### لاگ‌ها
```bash
# مشاهده لاگ‌ها
tail -f logs/geometry_solver.log
tail -f logs/experimental_geometry.log
```
## 🤝 مشارکت
### راه‌های مشارکت
- گزارش باگ‌ها
- پیشنهاد ویژگی‌های جدید
- بهبود مستندات
- اضافه کردن مثال‌های جدید
### استانداردهای کد
- استفاده از Python 3.9+
- رعایت PEP 8
- مستندسازی کامل
- تست‌های جامع
## 📚 منابع و مراجع
### مقالات علمی
- "Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks"
- "LangChain: Building Applications with LLMs"
- "Geometric Reasoning with Large Language Models"
### منابع آموزشی
- [LangChain Documentation](https://python.langchain.com/)
- [Google Gemini API](https://ai.google.dev/)
- [ChromaDB Documentation](https://docs.trychroma.com/)
## 📄 مجوز
این پروژه تحت مجوز MIT منتشر شده است.
## 🙏 تشکر
- تیم Google Gemini
- توسعه‌دهندگان LangChain
- جامعه هوش مصنوعی
- دانشجویان دوره سیستم‌های هوش مصنوعی
---
## ✅ Assessment Checklist / چک‌لیست ارزیابی
Before submission, ensure you have completed:
- [ ] **Implement RAG Pipeline**: Build knowledge base with ChromaDB/FAISS and semantic search
- [ ] **Develop LangChain Agent**: Create geometry solver with specialized tools and memory
- [ ] **Design LangGraph Workflow**: Implement multi-step reasoning workflow for complex proofs
- [ ] **Comprehensive Evaluation**: Test on diverse geometric problems and generate performance reports
## 📚 Course Resources / منابع دوره
### Related Lecture Decks / اسلایدهای مرتبط
- **Slides 5**: NeuroSymbolic - Olympiad Geometry - Advanced geometric reasoning
- **Slides 23-24**: Language Agents - LangChain and multi-agent systems
- **Slides 20-21**: Knowledge Graph Reasoning - Structured knowledge representation
### Annotated Notes & Exercises / یادداشت‌های تفسیری
- **A2I_S05**: RAG and Knowledge Systems - Retrieval-augmented generation
- **A2I_S23-24**: Language Agents - Agent architectures and workflows
### Companion Assignments / تکالیف مرتبط
- **CA4**: Visual Question Answering - Multimodal geometric understanding
- **CA21**: LangChain Memory Agents - Advanced agent design
- **CA10**: Knowledge Graphs - Structured reasoning systems
---
**نسخه**: 2.0.0
**تاریخ آخرین بروزرسانی**: ژانویه 2025
**تیم توسعه**: AI Systems Course Team

Xet Storage Details

Size:
9.9 kB
·
Xet hash:
6a284e487efd08008c7cb81eb5f340d840ce2126b2a7daf1c87e15837ee78f9d

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.