Buckets:
| # 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.