Repository: NirDiamant/RAG_Techniques Branch: main Commit: 69a08b03154e Files: 49 Total size: 3.5 MB Directory structure: gitextract_uht8b4vm/ ├── .github/ │ ├── FUNDING.yml │ └── workflows/ │ ├── github-test.yml │ └── local-test.yml ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── all_rag_techniques/ │ ├── Agentic_RAG.ipynb │ ├── HyDe_Hypothetical_Document_Embedding.ipynb │ ├── HyPE_Hypothetical_Prompt_Embeddings.ipynb │ ├── Microsoft_GraphRag.ipynb │ ├── adaptive_retrieval.ipynb │ ├── choose_chunk_size.ipynb │ ├── context_enrichment_window_around_chunk.ipynb │ ├── context_enrichment_window_around_chunk_with_llamaindex.ipynb │ ├── contextual_chunk_headers.ipynb │ ├── contextual_compression.ipynb │ ├── crag.ipynb │ ├── dartboard.ipynb │ ├── document_augmentation.ipynb │ ├── explainable_retrieval.ipynb │ ├── fusion_retrieval.ipynb │ ├── fusion_retrieval_with_llamaindex.ipynb │ ├── graph_rag.ipynb │ ├── graphrag_with_milvus_vectordb.ipynb │ ├── hierarchical_indices.ipynb │ ├── multi_model_rag_with_captioning.ipynb │ ├── multi_model_rag_with_colpali.ipynb │ ├── proposition_chunking.ipynb │ ├── query_transformations.ipynb │ ├── raptor.ipynb │ ├── relevant_segment_extraction.ipynb │ ├── reliable_rag.ipynb │ ├── reranking.ipynb │ ├── reranking_with_llamaindex.ipynb │ ├── retrieval_with_feedback_loop.ipynb │ ├── self_rag.ipynb │ ├── semantic_chunking.ipynb │ ├── simple_csv_rag.ipynb │ ├── simple_csv_rag_with_llamaindex.ipynb │ ├── simple_rag.ipynb │ └── simple_rag_with_llamaindex.ipynb ├── data/ │ ├── customers-100.csv │ ├── nike_2023_annual_report.txt │ └── q_a.json ├── evaluation/ │ ├── define_evaluation_metrics.ipynb │ ├── evaluation_deep_eval.ipynb │ ├── evaluation_grouse.ipynb │ └── evalute_rag.py └── helper_functions.py ================================================ FILE CONTENTS ================================================ ================================================ FILE: .github/FUNDING.yml ================================================ github: NirDiamant ================================================ FILE: .github/workflows/github-test.yml ================================================ name: GitHub PR Test on: pull_request: types: [opened, synchronize, reopened] branches: - main paths: - "requirements.txt" jobs: test: runs-on: ubuntu-latest env: OPENAI_API_KEY: "123" steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Python uses: actions/setup-python@v4 with: python-version: '3.12.6' cache: 'pip' - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt - name: Run tests run: | pytest ================================================ FILE: .github/workflows/local-test.yml ================================================ name: Local Test with act on: workflow_dispatch: jobs: test: container: image: catthehacker/ubuntu:act-latest env: OPENAI_API_KEY: "123" steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Python uses: actions/setup-python@v4 with: python-version: '3.12.6' - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt - name: Run tests run: | pytest ================================================ FILE: CONTRIBUTING.md ================================================ # Contributing to RAG Techniques Welcome to the world's largest and most comprehensive repository of Retrieval-Augmented Generation (RAG) tutorials! 🌟 We're thrilled you're interested in contributing to this ever-growing knowledge base. Your expertise and creativity can help us maintain our position at the forefront of RAG technology. ## Join Our Community We have a vibrant Discord community where contributors can discuss ideas, ask questions, and collaborate on RAG techniques. Join us at: [RAG Techniques Discord Server](https://discord.gg/cA6Aa4uyDX) Don't hesitate to introduce yourself and share your thoughts! ## Ways to Contribute We welcome contributions of all kinds! Here are some ways you can help: 1. **Add New RAG Techniques:** Create new notebooks showcasing novel RAG methods. 2. **Improve Existing Notebooks:** Enhance, update, or expand our current tutorials. 3. **Fix Bugs:** Help us squash bugs in existing code or explanations. 4. **Enhance Documentation:** Improve clarity, add examples, or fix typos in our docs. 5. **Share Creative Ideas:** Have an innovative idea? We're all ears! 6. **Engage in Discussions:** Participate in our Discord community to help shape the future of RAG. Remember, no contribution is too small. Every improvement helps make this repository an even better resource for the community. ## Reporting Issues Found a problem or have a suggestion? Please create an issue on GitHub, providing as much detail as possible. You can also discuss issues in our Discord community. ## Contributing Code or Content 1. **Fork and Branch:** Fork the repository and create your branch from `main`. 2. **Make Your Changes:** Implement your contribution, following our best practices. 3. **Test:** Ensure your changes work as expected. 4. **Follow the Style:** Adhere to the coding and documentation conventions used throughout the project. 5. **Commit:** Make your git commits informative and concise. 6. **Stay Updated:** The main branch is frequently updated. Before opening a pull request, make sure your code is up-to-date with the current main branch and has no conflicts. 7. **Push and Pull Request:** Push to your fork and submit a pull request. 8. **Discuss:** Use the Discord community to discuss your contribution if you need feedback or have questions. ## Adding a New RAG Method When adding a new RAG method to the repository, please follow these additional steps: 1. Create your notebook in the `all_rag_techniques` folder. 2. Update BOTH the list and table in README.md: ### A. Update the List of Techniques - Add your new method to the list of techniques in the README - Place it in the appropriate position based on complexity (methods are sorted from easiest to most complicated) - Use the following format for the link: ``` ### [Number]. [Your Method Name 🏷️](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/your_file_name.ipynb) ``` - Replace `[Number]` with the appropriate number, `[Your Method Name]` with your method's name, and `your_file_name.ipynb` with the actual name of your notebook file - Choose an appropriate emoji that represents your method ### B. Update the Techniques Table - Add a new row to the table with your technique - Include all available implementations (LangChain, LlamaIndex, and/or Runnable Script) - Use the following format: ``` | [Number] | [Category] | [LangChain](...) / [LlamaIndex](...) / [Runnable Script](...) | [Description] | ``` - Make sure to: - Update the technique number to maintain sequential order - Choose the appropriate category with emoji - Include links to all available implementations - Write a clear, concise description ### C. Important Note - After inserting your new method, make sure to update the numbers of all subsequent techniques to maintain the correct order in BOTH the list and the table - The numbers in the list and table must match exactly - If you add a new technique as number 5, all techniques after it should be incremented by 1 in both places For example, if you're adding a new technique between Simple RAG and Next Method: In the list: ``` ### 1. [Simple RAG 🌱](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/simple_rag.ipynb) ### 2. [Your New Method 🆕](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/your_new_method.ipynb) ### 3. [Next Method 🔜](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/next_method.ipynb) ``` And in the table: ``` | 1 | Foundational 🌱 | [LangChain](...) / [LlamaIndex](...) / [Runnable Script](...) | Basic RAG implementation | | 2 | Your Category 🆕 | [LangChain](...) / [LlamaIndex](...) / [Runnable Script](...) | Your new method description | | 3 | Next Category 🔜 | [LangChain](...) / [LlamaIndex](...) / [Runnable Script](...) | Next method description | ``` Remember: Always update BOTH the list and table when adding new techniques, and ensure the numbers match exactly between them. ## Notebook Structure For new notebooks or significant additions to existing ones, please follow this structure: 1. **Title and Overview:** Clear title and brief overview of the technique. 2. **Detailed Explanation:** Cover motivation, key components, method details, and benefits. 3. **Visual Representation:** Include a diagram to visualize the technique. We recommend using Mermaid syntax for creating these diagrams. Here's how to do it: • Create a graph using Mermaid's graph TD (top-down) syntax
• You can use Claude or other AI assistants to help you design the graph if needed
• Paste your Mermaid code into [Mermaid Live Editor](https://mermaid.live/)
• In the "Actions" tab of Mermaid Live Editor, download the SVG file of your diagram
• Store the SVG file in the [images folder](https://github.com/NirDiamant/RAG_Techniques/tree/main/images) of the repository
• Use an appropriate, descriptive name for the file
• In your notebook, display the image using Markdown syntax:
```markdown ![Your Technique Name](../images/your-technique-name.svg) ``` This process ensures consistency in our visual representations and makes it easy for others to understand and potentially modify the diagrams in the future. 4. **Implementation:** Step-by-step Python implementation with clear comments and explanations. 5. **Usage Example:** Demonstrate the technique with a practical example. 6. **Comparison:** Compare with basic RAG, both qualitatively and quantitatively if possible. 7. **Additional Considerations:** Discuss limitations, potential improvements, or specific use cases. 8. **References:** Include relevant citations or resources if you have. ## Notebook Best Practices To ensure consistency and readability across all notebooks: 1. **Code Cell Descriptions:** Each code cell should be preceded by a markdown cell with a clear, concise title describing the cell's content or purpose. 2. **Clear Unnecessary Outputs:** Before committing your notebook, clear all unnecessary cell outputs. This helps reduce file size and avoids confusion from outdated results. 3. **Consistent Formatting:** Maintain consistent formatting throughout the notebook, including regular use of markdown headers, code comments, and proper indentation. ## Code Quality and Readability To ensure the highest quality and readability of our code: 1. **Write Clean Code:** Follow best practices for clean, readable code. 2. **Use Comments:** Add clear and concise comments to explain complex logic. 3. **Format Your Code:** Use consistent formatting throughout your contribution. 4. **Language Model Review:** After completing your code, consider passing it through a language model for additional formatting and readability improvements. This extra step can help make your code even more accessible and maintainable. ## Documentation Clear documentation is crucial. Whether you're improving existing docs or adding new ones, follow the same process: fork, change, test, and submit a pull request. ## Final Notes We're grateful for all our contributors and excited to see how you'll help expand the world's most comprehensive RAG resource. Don't hesitate to ask questions in our Discord community if you're unsure about anything. Let's harness our collective knowledge and creativity to push the boundaries of RAG technology together! Happy contributing! 🚀 ![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=contributing-guide) ================================================ FILE: LICENSE ================================================ Custom License Agreement This License Agreement ("Agreement") is a legal agreement between Nir Diamant ("Licensor") and any individual or entity ("Licensee" or "Contributor") who accesses, uses, or contributes to this repository. By accessing, using, or contributing to the Repository, you agree to be bound by the terms of this Agreement. 1. Grant of License for Non-Commercial Use 1.1 Non-Commercial Use License: The Licensor grants the Licensee a worldwide, royalty-free, non-exclusive, non-transferable license to use, reproduce, modify, and distribute the content of the Repository ("Licensed Material") for non-commercial purposes only, subject to the terms and conditions of this Agreement. 1.2 Attribution Requirement: When using or distributing the Licensed Material, the Licensee must provide appropriate credit to the Licensor by: - Citing the Licensor's name as specified. - Including a link to the Repository. - Indicating if changes were made to the Licensed Material. 1.3 No Commercial Use: Licensees are expressly prohibited from using the Licensed Material, in whole or in part, for any commercial purpose without prior written permission from the Licensor. 2. Reservation of Commercial Rights 2.1 Exclusive Commercial Rights: All commercial rights to the Licensed Material are exclusively reserved by the Licensor. The Licensor retains the sole right to use, reproduce, modify, distribute, and sublicense the Licensed Material for commercial purposes. 2.2 Requesting Commercial Permission: Parties interested in using the Licensed Material for commercial purposes must obtain explicit written consent from the Licensor. Requests should be directed to the contact information provided at the end of this Agreement. 3. Contributions 3.1 Contributor License Grant: By submitting any content ("Contribution") to the Repository, the Contributor grants the Licensor an exclusive, perpetual, irrevocable, worldwide, royalty-free license to use, reproduce, modify, distribute, sublicense, and create derivative works from the Contribution for any purpose, including commercial purposes. 3.2 Non-Commercial Use by Contributor: Contributors retain the right to use their own Contributions for non-commercial purposes under the same terms as this Agreement. 3.3 Warranty of Originality: Contributors represent and warrant that their Contributions are original works and do not infringe upon the intellectual property rights of any third party. 3.4 No Commercial Rights for Contributors: Contributors acknowledge that they have no rights to use the Licensed Material or their Contributions for commercial purposes. 4. Restrictions 4.1 Prohibition of Commercial Exploitation: Licensees and Contributors may not: - Use the Licensed Material or any Contributions for commercial purposes. - Distribute the Licensed Material or any Contributions as part of any commercial product or service. - Sublicense the Licensed Material or any Contributions for commercial use. 4.2 No Endorsement: Licensees and Contributors may not imply endorsement or affiliation with the Licensor without explicit written permission. 5. Term and Termination 5.1 Term: This Agreement is effective upon acceptance and continues unless terminated as provided herein. 5.2 Termination for Breach: The Licensor may terminate this Agreement immediately if the Licensee or Contributor breaches any of its terms. 5.3 Effect of Termination: Upon termination, all rights granted under this Agreement cease, and the Licensee or Contributor must destroy all copies of the Licensed Material in their possession. 5.4 Survival: Sections 2, 3, 4, 6, and 7 survive termination of this Agreement. 6. Disclaimer of Warranties and Limitation of Liability 6.1 As-Is Basis: The Licensed Material and any Contributions are provided "AS IS," without warranties or conditions of any kind, either express or implied. 6.2 Disclaimer: The Licensor expressly disclaims all warranties, including but not limited to warranties of title, non-infringement, merchantability, and fitness for a particular purpose. 6.3 Limitation of Liability: In no event shall the Licensor be liable for any direct, indirect, incidental, special, exemplary, or consequential damages arising in any way out of the use of the Licensed Material or Contributions. 7. General Provisions 7.1 Entire Agreement: This Agreement constitutes the entire agreement between the parties concerning the subject matter hereof and supersedes all prior agreements and understandings. 7.2 Modification: The Licensor reserves the right to modify this Agreement at any time. Continued use of the Repository constitutes acceptance of the modified terms. 7.3 Severability: If any provision of this Agreement is found to be unenforceable, the remainder shall remain in full force and effect. 7.4 Waiver: Failure to enforce any provision of this Agreement shall not constitute a waiver of such provision. 7.5 Governing Law: This Agreement shall be governed by and construed in accordance with the laws of [Your Jurisdiction], without regard to its conflict of law principles. 7.6 Dispute Resolution: Any disputes arising under or in connection with this Agreement shall be subject to the exclusive jurisdiction of the courts located in [Your Jurisdiction]. 8. Acceptance By accessing, using, or contributing to the Repository, you acknowledge that you have read, understood, and agree to be bound by the terms and conditions of this Agreement. Contact Information For any questions or requests regarding this Agreement, please contact: Name: Nir Diamant Email: nirdiamant21@gmail.com ================================================ FILE: README.md ================================================ [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) [![LinkedIn](https://img.shields.io/badge/LinkedIn-Connect-blue)](https://www.linkedin.com/in/nir-diamant-759323134/) [![Twitter](https://img.shields.io/twitter/follow/NirDiamantAI?label=Follow%20@NirDiamantAI&style=social)](https://twitter.com/NirDiamantAI) [![Reddit](https://img.shields.io/badge/Reddit-Join%20our%20subreddit-FF4500?style=flat-square&logo=reddit&logoColor=white)](https://www.reddit.com/r/EducationalAI/) [![Discord](https://img.shields.io/badge/Discord-Join%20our%20community-7289da?style=flat-square&logo=discord&logoColor=white)](https://discord.gg/cA6Aa4uyDX) [![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=ff69b4)](https://github.com/sponsors/NirDiamant) > 🌟 **Support This Project:** Your sponsorship fuels innovation in RAG technologies. **[Become a sponsor](https://www.diamant-ai.com/sponsorship)** to help maintain and expand this valuable resource! ## Sponsors ❤️ We gratefully acknowledge the organizations and individuals who have made significant contributions to this project. **Company Sponsors**
Contextual AI Contextual AI CodeRabbit CodeRabbit
**Individual Sponsors** # Advanced RAG Techniques: Elevating Your Retrieval-Augmented Generation Systems 🚀 Welcome to one of the most comprehensive and dynamic collections of Retrieval-Augmented Generation (RAG) tutorials available today. This repository serves as a hub for cutting-edge techniques aimed at enhancing the accuracy, efficiency, and contextual richness of RAG systems. ## 📫 Stay Updated!
🚀
Cutting-edge
Updates
💡
Expert
Insights
🎯
Top 0.1%
Content
[![Subscribe to DiamantAI Newsletter](images/subscribe-button.svg)](https://diamantai.substack.com/?r=336pe4&utm_campaign=pub-share-checklist) *Join over 50,000 AI enthusiasts getting unique cutting-edge insights and free tutorials!* ***Plus, subscribers get exclusive early access and special 33% discounts to my book and the upcoming RAG Techniques course!***
[![DiamantAI's newsletter](images/substack_image.png)](https://diamantai.substack.com/?r=336pe4&utm_campaign=pub-share-checklist) ## Introduction Retrieval-Augmented Generation (RAG) is revolutionizing the way we combine information retrieval with generative AI. This repository showcases a curated collection of advanced techniques designed to supercharge your RAG systems, enabling them to deliver more accurate, contextually relevant, and comprehensive responses. Our goal is to provide a valuable resource for researchers and practitioners looking to push the boundaries of what's possible with RAG. By fostering a collaborative environment, we aim to accelerate innovation in this exciting field. ## Related Projects 🚀 Level up with my **[Agents Towards Production](https://github.com/NirDiamant/agents-towards-production)** repository. It delivers horizontal, code-first tutorials that cover every tool and step in the lifecycle of building production-grade GenAI agents, guiding you from spark to scale with proven patterns and reusable blueprints for real-world launches, making it the smartest place to start if you're serious about shipping agents to production. 🤖 Explore my **[GenAI Agents Repository](https://github.com/NirDiamant/GenAI_Agents)** to discover a variety of AI agent implementations and tutorials, showcasing how different AI technologies can be combined to create powerful, interactive systems. 🖋️ Check out my **[Prompt Engineering Techniques guide](https://github.com/NirDiamant/Prompt_Engineering)** for a comprehensive collection of prompting strategies, from basic concepts to advanced techniques, enhancing your ability to interact effectively with AI language models. ## A Community-Driven Knowledge Hub **This repository grows stronger with your contributions!** Join our vibrant communities - the central hubs for shaping and advancing this project together 🤝 **[Educational AI Subreddit](https://www.reddit.com/r/EducationalAI/)** **[RAG Techniques Discord Community](https://discord.gg/cA6Aa4uyDX)** Whether you're an expert or just starting out, your insights can shape the future of RAG. Join us to propose ideas, get feedback, and collaborate on innovative techniques. For contribution guidelines, please refer to our **[CONTRIBUTING.md](https://github.com/NirDiamant/RAG_Techniques/blob/main/CONTRIBUTING.md)** file. Let's advance RAG technology together! 🔗 For discussions on GenAI, RAG, or custom agents, or to explore knowledge-sharing opportunities, feel free to **[connect on LinkedIn](https://www.linkedin.com/in/nir-diamant-759323134/)**. ## Key Features - 🧠 State-of-the-art RAG enhancements - 📚 Comprehensive documentation for each technique - 🛠️ Practical implementation guidelines - 🌟 Regular updates with the latest advancements ## Advanced Techniques Explore our extensive list of cutting-edge RAG techniques: | # | Category | Technique | View | |---|----------|-----------|------| | 1 | ⭐ Key Collaboration | Agentic RAG with Contextual AI | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/Agentic_RAG.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/Agentic_RAG.ipynb) | | 2 | Foundational 🌱 | Basic RAG | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/simple_rag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/simple_rag.ipynb) | | 3 | Foundational 🌱 | RAG with CSV Files | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/simple_csv_rag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/simple_csv_rag.ipynb) | | 4 | Foundational 🌱 | Reliable RAG | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/reliable_rag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/reliable_rag.ipynb) | | 5 | Foundational 🌱 | Optimizing Chunk Sizes | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/choose_chunk_size.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/choose_chunk_size.ipynb) | | 6 | Foundational 🌱 | Proposition Chunking | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/proposition_chunking.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/proposition_chunking.ipynb) | | 7 | Query Enhancement 🔍 | Query Transformations | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/query_transformations.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/query_transformations.ipynb) | | 8 | Query Enhancement 🔍 | HyDE (Hypothetical Document Embedding) | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/HyDe_Hypothetical_Document_Embedding.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/HyDe_Hypothetical_Document_Embedding.ipynb) | | 9 | Query Enhancement 🔍 | HyPE (Hypothetical Prompt Embedding) | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/HyPE_Hypothetical_Prompt_Embeddings.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/HyPE_Hypothetical_Prompt_Embeddings.ipynb) | | 10 | Context Enrichment 📚 | Contextual Chunk Headers | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/contextual_chunk_headers.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/contextual_chunk_headers.ipynb) | | 11 | Context Enrichment 📚 | Relevant Segment Extraction | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/relevant_segment_extraction.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/relevant_segment_extraction.ipynb) | | 12 | Context Enrichment 📚 | Context Window Enhancement | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/context_enrichment_window_around_chunk.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/context_enrichment_window_around_chunk.ipynb) | | 13 | Context Enrichment 📚 | Semantic Chunking | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/semantic_chunking.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/semantic_chunking.ipynb) | | 14 | Context Enrichment 📚 | Contextual Compression | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/contextual_compression.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/contextual_compression.ipynb) | | 15 | Context Enrichment 📚 | Document Augmentation | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/document_augmentation.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/document_augmentation.ipynb) | | 16 | Advanced Retrieval 🚀 | Fusion Retrieval | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/fusion_retrieval.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/fusion_retrieval.ipynb) | | 17 | Advanced Retrieval 🚀 | Reranking | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/reranking.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/reranking.ipynb) | | 18 | Advanced Retrieval 🚀 | Multi-faceted Filtering | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/multi_faceted_filtering.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/multi_faceted_filtering.ipynb) | | 19 | Advanced Retrieval 🚀 | Hierarchical Indices | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/hierarchical_indices.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/hierarchical_indices.ipynb) | | 20 | Advanced Retrieval 🚀 | Ensemble Retrieval | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/ensemble_retrieval.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/ensemble_retrieval.ipynb) | | 21 | Advanced Retrieval 🚀 | Dartboard Retrieval | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/dartboard.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/dartboard.ipynb) | | 22 | Advanced Retrieval 🚀 | Multi-modal RAG with Captioning | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/multi_model_rag_with_captioning.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/multi_model_rag_with_captioning.ipynb) | | 23 | Iterative Techniques 🔁 | Retrieval with Feedback Loop | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/retrieval_with_feedback_loop.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/retrieval_with_feedback_loop.ipynb) | | 24 | Iterative Techniques 🔁 | Adaptive Retrieval | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/adaptive_retrieval.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/adaptive_retrieval.ipynb) | | 25 | Iterative Retrieval 🔄 | Iterative Retrieval | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/iterative_retrieval.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/iterative_retrieval.ipynb) | | 26 | Evaluation 📊 | DeepEval | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/evaluation/evaluation_deep_eval.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/evaluation/evaluation_deep_eval.ipynb) | | 27 | Evaluation 📊 | GroUSE | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/evaluation/evaluation_grouse.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/evaluation/evaluation_grouse.ipynb) | | 28 | Explainability 🔬 | Explainable Retrieval | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/explainable_retrieval.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/explainable_retrieval.ipynb) | | 29 | Advanced Architecture 🏗️ | Graph RAG with LangChain | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/graph_rag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/graph_rag.ipynb) | | 30 | Advanced Architecture 🏗️ | Microsoft GraphRAG | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/Microsoft_GraphRag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/Microsoft_GraphRag.ipynb) | | 31 | Advanced Architecture 🏗️ | RAPTOR | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/raptor.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/raptor.ipynb) | | 32 | Advanced Architecture 🏗️ | Self-RAG | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/self_rag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/self_rag.ipynb) | | 33 | Advanced Architecture 🏗️ | Corrective RAG (CRAG) | [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/crag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/crag.ipynb) | | 34 | Special Technique 🌟 | Sophisticated Controllable Agent | [](https://github.com/NirDiamant/Controllable-RAG-Agent) | ### 🌱 Foundational RAG Techniques 1. Simple RAG 🌱 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/simple_rag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/simple_rag.ipynb) - **LlamaIndex**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/simple_rag_with_llamaindex.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/simple_rag_with_llamaindex.ipynb) - **[Runnable Script](https://github.com/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques_runnable_scripts/simple_rag.py)** #### Overview 🔎 Introducing basic RAG techniques ideal for newcomers. #### Implementation 🛠️ Start with basic retrieval queries and integrate incremental learning mechanisms. 2. Simple RAG using a CSV file 🧩 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/simple_csv_rag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/simple_csv_rag.ipynb) - **LlamaIndex**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/simple_csv_rag_with_llamaindex.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/simple_csv_rag_with_llamaindex.ipynb) #### Overview 🔎 Introducing basic RAG using CSV files. #### Implementation 🛠️ This uses CSV files to create basic retrieval and integrates with openai to create question and answering system. 3. **Reliable RAG 🏷️**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/reliable_rag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/reliable_rag.ipynb) #### Overview 🔎 Enhances the Simple RAG by adding validation and refinement to ensure the accuracy and relevance of retrieved information. #### Implementation 🛠️ Check for retrieved document relevancy and highlight the segment of docs used for answering. 4. Choose Chunk Size 📏 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/choose_chunk_size.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/choose_chunk_size.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/choose_chunk_size.py)** #### Overview 🔎 Selecting an appropriate fixed size for text chunks to balance context preservation and retrieval efficiency. #### Implementation 🛠️ Experiment with different chunk sizes to find the optimal balance between preserving context and maintaining retrieval speed for your specific use case. 5. **Proposition Chunking ⛓️‍💥**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/proposition_chunking.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/proposition_chunking.ipynb) #### Overview 🔎 Breaking down the text into concise, complete, meaningful sentences allowing for better control and handling of specific queries (especially extracting knowledge). #### Implementation 🛠️ - 💪 **Proposition Generation:** The LLM is used in conjunction with a custom prompt to generate factual statements from the document chunks. - ✅ **Quality Checking:** The generated propositions are passed through a grading system that evaluates accuracy, clarity, completeness, and conciseness. #### Additional Resources 📚 - **[The Propositions Method: Enhancing Information Retrieval for AI Systems](https://open.substack.com/pub/diamantai/p/the-propositions-method-enhancing?r=336pe4&utm_campaign=post&utm_medium=web)** - A comprehensive blog post exploring the benefits and implementation of proposition chunking in RAG systems. ### 🔍 Query Enhancement 6. Query Transformations 🔄 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/query_transformations.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/query_transformations.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/query_transformations.py)** #### Overview 🔎 Modifying and expanding queries to improve retrieval effectiveness. #### Implementation 🛠️ - ✍️ **Query Rewriting:** Reformulate queries to improve retrieval. - 🔙 **Step-back Prompting:** Generate broader queries for better context retrieval. - 🧩 **Sub-query Decomposition:** Break complex queries into simpler sub-queries. 7. Hypothetical Questions (HyDE Approach) ❓ - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/HyDe_Hypothetical_Document_Embedding.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/HyDe_Hypothetical_Document_Embedding.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/HyDe_Hypothetical_Document_Embedding.py)** #### Overview 🔎 Generating hypothetical questions to improve alignment between queries and data. #### Implementation 🛠️ Create hypothetical questions that point to relevant locations in the data, enhancing query-data matching. #### Additional Resources 📚 - **[HyDE: Exploring Hypothetical Document Embeddings for AI Retrieval](https://open.substack.com/pub/diamantai/p/hyde-exploring-hypothetical-document?r=336pe4&utm_campaign=post&utm_medium=web)** - A short blog post explaining this method clearly. ### 📚 Context and Content Enrichment 8. Hypothetical Prompt Embeddings (HyPE) ❓🚀 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/HyPE_Hypothetical_Prompt_Embedding.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/HyPE_Hypothetical_Prompt_Embedding.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/HyPE_Hypothetical_Prompt_Embeddings.py)** #### Overview 🔎 HyPE (Hypothetical Prompt Embeddings) is an enhancement to traditional RAG retrieval that **precomputes hypothetical prompts at the indexing stage**, but inseting the chunk in their place. This transforms retrieval into a **question-question matching task**. This avoids the need for runtime synthetic answer generation, reducing inference-time computational overhead while **improving retrieval alignment**. #### Implementation 🛠️ - 📖 **Precomputed Questions:** Instead of embedding document chunks, HyPE **generates multiple hypothetical queries per chunk** at indexing time. - 🔍 **Question-Question Matching:** User queries are matched against stored hypothetical questions, leading to **better retrieval alignment**. - ⚡ **No Runtime Overhead:** Unlike HyDE, HyPE does **not require LLM calls at query time**, making retrieval **faster and cheaper**. - 📈 **Higher Precision & Recall:** Improves retrieval **context precision by up to 42 percentage points** and **claim recall by up to 45 percentage points**. #### Additional Resources 📚 - **[Preprint: Hypothetical Prompt Embeddings (HyPE)](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=5139335)** - Research paper detailing the method, evaluation, and benchmarks. 9. **Contextual Chunk Headers :label:**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/contextual_chunk_headers.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/contextual_chunk_headers.ipynb) #### Overview 🔎 Contextual chunk headers (CCH) is a method of creating document-level and section-level context, and prepending those chunk headers to the chunks prior to embedding them. #### Implementation 🛠️ Create a chunk header that includes context about the document and/or section of the document, and prepend that to each chunk in order to improve the retrieval accuracy. #### Additional Resources 📚 **[dsRAG](https://github.com/D-Star-AI/dsRAG)**: open-source retrieval engine that implements this technique (and a few other advanced RAG techniques) 10. **Relevant Segment Extraction 🧩**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/relevant_segment_extraction.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/relevant_segment_extraction.ipynb) #### Overview 🔎 Relevant segment extraction (RSE) is a method of dynamically constructing multi-chunk segments of text that are relevant to a given query. #### Implementation 🛠️ Perform a retrieval post-processing step that analyzes the most relevant chunks and identifies longer multi-chunk segments to provide more complete context to the LLM. 11. Context Enrichment Techniques 📝 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/context_enrichment_window_around_chunk.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/context_enrichment_window_around_chunk.ipynb) - **LlamaIndex**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/context_enrichment_window_around_chunk_with_llamaindex.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/context_enrichment_window_around_chunk_with_llamaindex.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/context_enrichment_window_around_chunk.py)** #### Overview 🔎 Enhancing retrieval accuracy by embedding individual sentences and extending context to neighboring sentences. #### Implementation 🛠️ Retrieve the most relevant sentence while also accessing the sentences before and after it in the original text. 12. Semantic Chunking 🧠 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/semantic_chunking.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/semantic_chunking.ipynb) - **[Runnable Script](https://github.com/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques_runnable_scripts/semantic_chunking.py)** #### Overview 🔎 Dividing documents based on semantic coherence rather than fixed sizes. #### Implementation 🛠️ Use NLP techniques to identify topic boundaries or coherent sections within documents for more meaningful retrieval units. #### Additional Resources 📚 - **[Semantic Chunking: Improving AI Information Retrieval](https://open.substack.com/pub/diamantai/p/semantic-chunking-improving-ai-information?r=336pe4&utm_campaign=post&utm_medium=web)** - A comprehensive blog post exploring the benefits and implementation of semantic chunking in RAG systems. 13. Contextual Compression 🗜️ - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/contextual_compression.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/contextual_compression.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/contextual_compression.py)** #### Overview 🔎 Compressing retrieved information while preserving query-relevant content. #### Implementation 🛠️ Use an LLM to compress or summarize retrieved chunks, preserving key information relevant to the query. 14. Document Augmentation through Question Generation for Enhanced Retrieval - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/document_augmentation.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/document_augmentation.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/document_augmentation.py)** #### Overview 🔎 This implementation demonstrates a text augmentation technique that leverages additional question generation to improve document retrieval within a vector database. By generating and incorporating various questions related to each text fragment, the system enhances the standard retrieval process, thus increasing the likelihood of finding relevant documents that can be utilized as context for generative question answering. #### Implementation 🛠️ Use an LLM to augment text dataset with all possible questions that can be asked to each document. ### 🚀 Advanced Retrieval Methods 15. Fusion Retrieval 🔗 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/fusion_retrieval.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/fusion_retrieval.ipynb) - **LlamaIndex**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/fusion_retrieval_with_llamaindex.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/fusion_retrieval_with_llamaindex.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/fusion_retrieval.py)** #### Overview 🔎 Optimizing search results by combining different retrieval methods. #### Implementation 🛠️ Combine keyword-based search with vector-based search for more comprehensive and accurate retrieval. 16. Intelligent Reranking 📈 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/reranking.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/reranking.ipynb) - **LlamaIndex**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/reranking_with_llamaindex.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/reranking_with_llamaindex.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/reranking.py)** #### Overview 🔎 Applying advanced scoring mechanisms to improve the relevance ranking of retrieved results. #### Implementation 🛠️ - 🧠 **LLM-based Scoring:** Use a language model to score the relevance of each retrieved chunk. - 🔀 **Cross-Encoder Models:** Re-encode both the query and retrieved documents jointly for similarity scoring. - 🏆 **Metadata-enhanced Ranking:** Incorporate metadata into the scoring process for more nuanced ranking. #### Additional Resources 📚 - **[Relevance Revolution: How Re-ranking Transforms RAG Systems](https://open.substack.com/pub/diamantai/p/relevance-revolution-how-re-ranking?r=336pe4&utm_campaign=post&utm_medium=web)** - A comprehensive blog post exploring the power of re-ranking in enhancing RAG system performance. 17. Multi-faceted Filtering 🔍 #### Overview 🔎 Applying various filtering techniques to refine and improve the quality of retrieved results. #### Implementation 🛠️ - 🏷️ **Metadata Filtering:** Apply filters based on attributes like date, source, author, or document type. - 📊 **Similarity Thresholds:** Set thresholds for relevance scores to keep only the most pertinent results. - 📄 **Content Filtering:** Remove results that don't match specific content criteria or essential keywords. - 🌈 **Diversity Filtering:** Ensure result diversity by filtering out near-duplicate entries. 18. Hierarchical Indices 🗂️ - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/hierarchical_indices.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/hierarchical_indices.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/hierarchical_indices.py)** #### Overview 🔎 Creating a multi-tiered system for efficient information navigation and retrieval. #### Implementation 🛠️ Implement a two-tiered system for document summaries and detailed chunks, both containing metadata pointing to the same location in the data. #### Additional Resources 📚 - **[Hierarchical Indices: Enhancing RAG Systems](https://open.substack.com/pub/diamantai/p/hierarchical-indices-enhancing-rag?r=336pe4&utm_campaign=post&utm_medium=web)** - A comprehensive blog post exploring the power of hierarchical indices in enhancing RAG system performance. 19. Ensemble Retrieval 🎭 #### Overview 🔎 Combining multiple retrieval models or techniques for more robust and accurate results. #### Implementation 🛠️ Apply different embedding models or retrieval algorithms and use voting or weighting mechanisms to determine the final set of retrieved documents. 20. Dartboard Retrieval 🎯 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/dartboard.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/dartboard.ipynb) #### Overview 🔎 Optimizing over Relevant Information Gain in Retrieval #### Implementation 🛠️ - Combine both relevance and diversity into a single scoring function and directly optimize for it. - POC showing plain simple RAG underperforming when the database is dense, and the dartboard retrieval outperforming it. 21. Multi-modal Retrieval 📽️ #### Overview 🔎 Extending RAG capabilities to handle diverse data types for richer responses. #### Implementation 🛠️ - **Multi-model RAG with Multimedia Captioning**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/multi_model_rag_with_captioning.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/multi_model_rag_with_captioning.ipynb) - Caption and store all the other multimedia data like pdfs, ppts, etc., with text data in vector store and retrieve them together. - **Multi-model RAG with Colpali**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/multi_model_rag_with_colpali.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/multi_model_rag_with_colpali.ipynb) - Instead of captioning convert all the data into image, then find the most relevant images and pass them to a vision large language model. ### 🔁 Iterative and Adaptive Techniques 22. Retrieval with Feedback Loops 🔁 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/retrieval_with_feedback_loop.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/retrieval_with_feedback_loop.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/retrieval_with_feedback_loop.py)** #### Overview 🔎 Implementing mechanisms to learn from user interactions and improve future retrievals. #### Implementation 🛠️ Collect and utilize user feedback on the relevance and quality of retrieved documents and generated responses to fine-tune retrieval and ranking models. 23. Adaptive Retrieval 🎯 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/adaptive_retrieval.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/adaptive_retrieval.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/adaptive_retrieval.py)** #### Overview 🔎 Dynamically adjusting retrieval strategies based on query types and user contexts. #### Implementation 🛠️ Classify queries into different categories and use tailored retrieval strategies for each, considering user context and preferences. 24. Iterative Retrieval 🔄 #### Overview 🔎 Performing multiple rounds of retrieval to refine and enhance result quality. #### Implementation 🛠️ Use the LLM to analyze initial results and generate follow-up queries to fill in gaps or clarify information. ### 📊 Evaluation 25. **DeepEval Evaluation**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/evaluation/evaluation_deep_eval.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/evaluation/evaluation_deep_eval.ipynb) | Comprehensive RAG system evaluation | #### Overview 🔎 Performing evaluations Retrieval-Augmented Generation systems, by covering several metrics and creating test cases. #### Implementation 🛠️ Use the `deepeval` library to conduct test cases on correctness, faithfulness and contextual relevancy of RAG systems. 26. **GroUSE Evaluation**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/evaluation/evaluation_grouse.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/evaluation/evaluation_grouse.ipynb) | Contextually-grounded LLM evaluation | #### Overview 🔎 Evaluate the final stage of Retrieval-Augmented Generation using metrics of the GroUSE framework and meta-evaluate your custom LLM judge on GroUSE unit tests. #### Implementation 🛠️ Use the `grouse` package to evaluate contextually-grounded LLM generations with GPT-4 on the 6 metrics of the GroUSE framework and use unit tests to evaluate a custom Llama 3.1 405B evaluator. ### 🔬 Explainability and Transparency 27. Explainable Retrieval 🔍 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/explainable_retrieval.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/explainable_retrieval.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/explainable_retrieval.py)** #### Overview 🔎 Providing transparency in the retrieval process to enhance user trust and system refinement. #### Implementation 🛠️ Explain why certain pieces of information were retrieved and how they relate to the query. ### 🏗️ Advanced Architectures 28. Agentic RAG with Contextual AI 🤖 - **Agentic RAG**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/Agentic_RAG.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/Agentic_RAG.ipynb) #### Overview 🔎 Building production-ready agentic RAG pipelines for financial document analysis with Contextual AI's managed platform. This comprehensive tutorial demonstrates how to leverage agentic RAG to solve complex queries through intelligent query reformulation, document parsing, reranking, and grounded language models. #### Implementation 🛠️ - **Document Parser**: Enterprise-grade parsing with vision models for complex tables, charts, and multi-page documents - **Instruction-Following Reranker**: SOTA reranker with instruction-following capabilities for handling conflicting information - **Grounded Language Model (GLM)**: World's most grounded LLM specifically engineered to minimize hallucinations for RAG use cases - **LMUnit**: Natural language unit testing framework for evaluating and optimizing RAG system performance 29. Graph RAG with Milvus Vector Database 🔍 - **Graph RAG with Milvus**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/all_rag_techniques/graphrag_with_milvus_vectordb.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/graphrag_with_milvus_vectordb.ipynb) #### Overview 🔎 A simple yet powerful approach to implement Graph RAG using Milvus vector databases. This technique significantly improves performance on complex multi-hop questions by combining relationship-based retrieval with vector search and reranking. #### Implementation 🛠️ - Store both text passages and relationship triplets (subject-predicate-object) in separate Milvus collections - Perform multi-way retrieval by querying both collections - Use an LLM to rerank retrieved relationships based on their relevance to the query - Retrieve the final passages based on the most relevant relationships 30. Knowledge Graph Integration (Graph RAG) 🕸️ - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/graph_rag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/graph_rag.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/graph_rag.py)** #### Overview 🔎 Incorporating structured data from knowledge graphs to enrich context and improve retrieval. #### Implementation 🛠️ Retrieve entities and their relationships from a knowledge graph relevant to the query, combining this structured data with unstructured text for more informative responses. 31. GraphRag (Microsoft) 🎯 - **GraphRag**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/Microsoft_GraphRag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/Microsoft_GraphRag.ipynb) #### Overview 🔎 Microsoft GraphRAG (Open Source) is an advanced RAG system that integrates knowledge graphs to improve the performance of LLMs #### Implementation 🛠️ • Analyze an input corpus by extracting entities, relationships from text units. generates summaries of each community and its constituents from the bottom-up. 32. RAPTOR: Recursive Abstractive Processing for Tree-Organized Retrieval 🌳 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/raptor.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/raptor.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/raptor.py)** #### Overview 🔎 Implementing a recursive approach to process and organize retrieved information in a tree structure. #### Implementation 🛠️ Use abstractive summarization to recursively process and summarize retrieved documents, organizing the information in a tree structure for hierarchical context. 33. Self RAG 🔁 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/self_rag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/self_rag.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/self_rag.py)** #### Overview 🔎 A dynamic approach that combines retrieval-based and generation-based methods, adaptively deciding whether to use retrieved information and how to best utilize it in generating responses. #### Implementation 🛠️ • Implement a multi-step process including retrieval decision, document retrieval, relevance evaluation, response generation, support assessment, and utility evaluation to produce accurate, relevant, and useful outputs. 34. Corrective RAG 🔧 - **LangChain**: [](https://github.com/NirDiamant/RAG_TECHNIQUES/blob/main/https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/crag.ipynb) [](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/crag.ipynb) - **[Runnable Script](all_rag_techniques_runnable_scripts/crag.py)** #### Overview 🔎 A sophisticated RAG approach that dynamically evaluates and corrects the retrieval process, combining vector databases, web search, and language models for highly accurate and context-aware responses. #### Implementation 🛠️ • Integrate Retrieval Evaluator, Knowledge Refinement, Web Search Query Rewriter, and Response Generator components to create a system that adapts its information sourcing strategy based on relevance scores and combines multiple sources when necessary. ## 🌟 Special Advanced Technique 🌟 35. **[Sophisticated Controllable Agent for Complex RAG Tasks 🤖](https://github.com/NirDiamant/Controllable-RAG-Agent)** #### Overview 🔎 An advanced RAG solution designed to tackle complex questions that simple semantic similarity-based retrieval cannot solve. This approach uses a sophisticated deterministic graph as the "brain" 🧠 of a highly controllable autonomous agent, capable of answering non-trivial questions from your own data. #### Implementation 🛠️ • Implement a multi-step process involving question anonymization, high-level planning, task breakdown, adaptive information retrieval and question answering, continuous re-planning, and rigorous answer verification to ensure grounded and accurate responses. ## Getting Started To begin implementing these advanced RAG techniques in your projects: 1. Clone this repository: ``` git clone https://github.com/NirDiamant/RAG_Techniques.git ``` 2. Navigate to the technique you're interested in: ``` cd all_rag_techniques/technique-name ``` 3. Follow the detailed implementation guide in each technique's directory. ## Contributing We welcome contributions from the community! If you have a new technique or improvement to suggest: 1. Fork the repository 2. Create your feature branch: `git checkout -b feature/AmazingFeature` 3. Commit your changes: `git commit -m 'Add some AmazingFeature'` 4. Push to the branch: `git push origin feature/AmazingFeature` 5. Open a pull request ## Contributors [![Contributors](https://contrib.rocks/image?repo=NirDiamant/RAG_Techniques)](https://github.com/NirDiamant/RAG_Techniques/graphs/contributors) ## License This project is licensed under a custom non-commercial license - see the [LICENSE](LICENSE) file for details. --- ⭐️ If you find this repository helpful, please consider giving it a star! ![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=main-readme) Keywords: RAG, Retrieval-Augmented Generation, NLP, AI, Machine Learning, Information Retrieval, Natural Language Processing, LLM, Embeddings, Semantic Search ================================================ FILE: all_rag_techniques/Agentic_RAG.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": { "id": "3V5XZVHek6xk" }, "source": [ "\"Image\n", "\n", "\n", " # Building Agentic RAG Pipelines for Financial Document Analysis with Contextual AI 🚀\n", " [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/NirDiamant/RAG_Techniques/blob/main/all_rag_techniques/Agentic_RAG.ipynb)\n", "\n", " Building Retrieval-Augmented Generation (RAG) pipelines can seem daunting, with lots of moving parts and custom logic. In this tutorial, you'll learn how to quickly set up RAG agents using **Contextual AI’s managed platform**. You'll also get hands-on with several of the agent's core components—like the Parser, Reranker, Grounded Language Model, and LMUnit—so you can see how each part works in practice.\n", "\n", " ## 🎯 What You'll Build\n", "\n", " In this hands-on tutorial, you'll explore **core RAG techniques** with Contextual AI while creating an agent for **financial document analysis and quantitative reasoning** from scratch.\n", "\n", "\n", " ### Learning Outcomes\n", " By completing this tutorial, you'll learn how to **leverage agentic RAG to solve more complex queries**. The agentic nature lies in the system's ability to autonomously analyze incoming queries, determine what reformulation strategy is needed, and execute that strategy without explicit user instruction.\n", "\n", " Traditional RAG systems take queries as-is, often leading to poor retrievals for ambiguous, context-lacking, or complex queries. Agentic RAG intelligently preprocesses queries to bridge this gap. In the query path, the primary agentic step is query reformulation, comprising multi-turn, query expansion, or query decomposition. This query reformulation step is critical to obtaining the most robust RAG results, and is one component of a system engineered to generate the most accurate query responses.\n", "\n", " In query reformulation, context is added or queries are restructured from the original input: for multi-turn, adding iterative dialogue context; for query expansion, adding additional context to help a short query return optimal results; for query decomposition, taking complex multi-faceted queries that require reasoning across several unrelated documents, and breaking them down into several sub-queries that help obtain the most relevant retrievals. This agentic component handles all of this reformulation autonomously, augmenting the user's query to help obtain the response they need.\n", "
\n", " \"Contextual\n", "
\n", "\n", "\n", " You will set up your Agentic RAG system by learning to:\n", " - **Configure document datastores** with indexing tuned for RAG performance \n", " - **Deploy production-ready agents** with robust instructions and safeguards \n", " - **Query the system interactively** using natural language while maintaining strict grounding \n", " - **Continuously validate and improve** your pipeline with automated testing and performance metrics \n", "\n", " You’ll also gain practical experience with **four fundamental RAG components in Contextual AI**:\n", " 1. **Parser** – Ingest and structure heterogeneous documents (reports, tables, figures) for retrieval. \n", " 2. **Reranker** – Dynamically select the most relevant evidence to ensure precise grounding. \n", " 3. **Grounded Language Model (GLM)** – Generate factual, source-backed responses using the retrieved context. \n", " 4. **Language Model Unit Tests (LMUnits)** – Automatically evaluate and optimize the accuracy, grounding, and reliability of your agent. \n", "\n", " ⏱️ This tutorial runs end-to-end in under **15 minutes**. Every step can also be done via GUI for a **no-code RAG workflow**.\n", "\n", " ---" ] }, { "cell_type": "markdown", "metadata": { "id": "clV0jqJl0K96" }, "source": [ "# Building a RAG Agent from Scratch\n", "\n", "Before diving into individual RAG techniques, let’s **build a complete RAG agent end-to-end** from scratch. \n", "\n", "## 🛠️ Environment Setup\n", "\n", "First, we'll install the required dependencies and set up our development environment. The `contextual-client` library provides Python bindings for the Contextual AI platform, while the additional packages support data visualization and progress tracking." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "XkSHhUakic9Y" }, "outputs": [], "source": [ "# Install required packages for Contextual AI integration and data visualization\n", "%pip install contextual-client matplotlib tqdm requests pandas dotenv" ] }, { "cell_type": "markdown", "metadata": { "id": "6f6q2NaCN66d" }, "source": [ "Next, we'll import the necessary libraries that we'll use throughout this tutorial:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "GJh1fBBWic9Y" }, "outputs": [], "source": [ "import os\n", "import json\n", "import requests\n", "from pathlib import Path\n", "from typing import List, Optional, Dict\n", "from IPython.display import display, JSON\n", "import pandas as pd\n", "from contextual import ContextualAI\n", "import ast\n", "from IPython.display import display, Markdown\n", "from tqdm import tqdm\n", "import numpy as np\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "markdown", "metadata": { "id": "Db9S8YTKijVt" }, "source": [ "---\n", "\n", "## 🔑 Step 1: API Authentication Setup\n", "\n", "### Getting Your Contextual AI API Key\n", "\n", "Before we can start building our RAG agent, you'll need access to the Contextual AI platform.\n", "\n", "If you do not have an account yet, you can create a workspace with a **30-day free trial** of an agent and datastore.\n", "\n", "### Step-by-Step API Key Setup:\n", "\n", "1. **Create Your Account**: Visit [app.contextual.ai](https://app.contextual.ai?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook) and click the **\"Start Free\"** button\n", "2. **Navigate to API Keys**: Once logged in, find **\"API Keys\"** in the sidebar\n", "3. **Generate New Key**: Click **\"Create API Key\"** and follow the setup steps\n", "4. **Store Securely**: Copy your API key and store it safely (you won't be able to see it again)\n", "\n", "
\n", "\"API\"\n", "
" ] }, { "cell_type": "markdown", "metadata": { "id": "8s-th42PN66e" }, "source": [ "### Configuring Your API Key\n", "\n", "To run this tutorial, you can store your API key in a `.env` file. This keeps your keys separate from your code. After setting up your .env file, you can load the API key from `.env` to initialize the Contextual AI client." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "CUbmJvzoNzIV" }, "outputs": [], "source": [ "# Load API key from .env\n", "from dotenv import load_dotenv\n", "import os\n", "load_dotenv()\n", "\n", "# Initialize with your API key\n", "API_KEY = os.getenv(\"CONTEXTUAL_API_KEY\")\n", "client = ContextualAI(\n", " api_key=API_KEY\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "lcqh_-j1MzCn" }, "source": [ "---\n", "\n", "## 📊 Step 2: Create Your Document Datastore\n", "\n", "### Understanding Datastores\n", "\n", "A **datastore** in Contextual AI is a secure, isolated container for your documents and their processed representations. Each datastore provides:\n", "\n", "- **Isolated Storage**: Documents are kept separate and secure for each use case\n", "- **Intelligent Processing**: Automatic parsing, chunking, and indexing of uploaded documents\n", "- **Optimized Retrieval**: High-performance search and ranking capabilities\n", "\n", "Let's create a datastore for our financial document analysis agent:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "wlulbIvjdbZA", "outputId": "350eda1d-b1c6-408e-dc80-262c144fa311" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Created new datastore with ID: 1335c317-61a1-4aad-8a97-ac6a6cdedc8b\n" ] } ], "source": [ "datastore_name = 'Financial_Demo_RAG'\n", "\n", "# Check if datastore exists\n", "datastores = client.datastores.list()\n", "existing_datastore = next((ds for ds in datastores if ds.name == datastore_name), None)\n", "\n", "if existing_datastore:\n", " datastore_id = existing_datastore.id\n", " print(f\"Using existing datastore with ID: {datastore_id}\")\n", "else:\n", " result = client.datastores.create(name=datastore_name)\n", " datastore_id = result.id\n", " print(f\"Created new datastore with ID: {datastore_id}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "_IkAep8Vf29_" }, "source": [ "---\n", "\n", "## 📄 Step 3: Document Ingestion and Processing\n", "\n", "Now that your agent's datastore is set up, let's add some financial documents to it. Contextual AI's document processing engine provides **enterprise-grade parsing** that expertly handles:\n", "\n", "- **Complex Tables**: Financial data, spreadsheets, and structured information\n", "- **Charts and Graphs**: Visual data extraction and interpretation\n", "- **Multi-page Documents**: Long reports with hierarchical structure\n", "\n", "For this tutorial, we'll use sample financial documents that demonstrate various challenging scenarios:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "3AbgklrUCEYB" }, "outputs": [], "source": [ "import os\n", "import requests\n", "\n", "# Create data directory if it doesn't exist\n", "if not os.path.exists('data'):\n", " os.makedirs('data')\n", "\n", "# File list with corresponding GitHub URLs\n", "files_to_upload = [\n", " # NVIDIA quarterly revnue 24/25\n", " (\"A_Rev_by_Mkt_Qtrly_Trend_Q425.pdf\", \"https://raw.githubusercontent.com/ContextualAI/examples/refs/heads/main/08-ai-workshop/data/A_Rev_by_Mkt_Qtrly_Trend_Q425.pdf\"),\n", " # NVIDIA quarterly revenue 22/23\n", " (\"B_Q423-Qtrly-Revenue-by-Market-slide.pdf\", \"https://raw.githubusercontent.com/ContextualAI/examples/refs/heads/main/08-ai-workshop/data/B_Q423-Qtrly-Revenue-by-Market-slide.pdf\"),\n", " # Spurious correlations report - fun example of graphs and statistical analysis\n", " (\"C_Neptune.pdf\", \"https://raw.githubusercontent.com/ContextualAI/examples/refs/heads/main/08-ai-workshop/data/C_Neptune.pdf\"),\n", " # Another spurious correlations report - fun example of graphs and statistical analysis\n", " (\"D_Unilever.pdf\", \"https://raw.githubusercontent.com/ContextualAI/examples/refs/heads/main/08-ai-workshop/data/D_Unilever.pdf\")\n", "]" ] }, { "cell_type": "markdown", "metadata": { "id": "xLYsG5B0P1Dk" }, "source": [ "### Document Download and Ingestion Process\n", "The following cell downloads example documents locally from the GitHub links above, uploads them to Contextual AI, and tracks their processing status and IDs." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "Ct8LHuvgPkyR", "outputId": "042cb0b1-1a23-4d5b-8dad-2fb0742039a7" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fetching data/A_Rev_by_Mkt_Qtrly_Trend_Q425.pdf\n", "Successfully uploaded A_Rev_by_Mkt_Qtrly_Trend_Q425.pdf to datastore 1335c317-61a1-4aad-8a97-ac6a6cdedc8b\n", "Fetching data/B_Q423-Qtrly-Revenue-by-Market-slide.pdf\n", "Successfully uploaded B_Q423-Qtrly-Revenue-by-Market-slide.pdf to datastore 1335c317-61a1-4aad-8a97-ac6a6cdedc8b\n", "Fetching data/C_Neptune.pdf\n", "Successfully uploaded C_Neptune.pdf to datastore 1335c317-61a1-4aad-8a97-ac6a6cdedc8b\n", "Fetching data/D_Unilever.pdf\n", "Successfully uploaded D_Unilever.pdf to datastore 1335c317-61a1-4aad-8a97-ac6a6cdedc8b\n", "Successfully uploaded 4 files to datastore\n", "Document IDs: ['c75ff84c-0a01-49d4-91e4-2692d2627f39', 'e8c132e7-297f-4dd3-9682-d6bdacc64912', 'd43223be-ade5-4802-9ecc-3463e38853c1', '5002f4aa-d5ca-4e9b-b005-4ac156ac4bf0']\n" ] } ], "source": [ "# Download and ingest all files\n", "document_ids = []\n", "for filename, url in files_to_upload:\n", " file_path = f'data/{filename}'\n", "\n", " # Download file if it doesn't exist\n", " if not os.path.exists(file_path):\n", " print(f\"Fetching {file_path}\")\n", " try:\n", " response = requests.get(url)\n", " response.raise_for_status() # Raise an exception for bad status codes\n", " with open(file_path, 'wb') as f:\n", " f.write(response.content)\n", " except Exception as e:\n", " print(f\"Error downloading {filename}: {str(e)}\")\n", " continue\n", "\n", " # Upload to datastore\n", " try:\n", " with open(file_path, 'rb') as f:\n", " ingestion_result = client.datastores.documents.ingest(datastore_id, file=f)\n", " document_id = ingestion_result.id\n", " document_ids.append(document_id)\n", " print(f\"Successfully uploaded {filename} to datastore {datastore_id}\")\n", " except Exception as e:\n", " print(f\"Error uploading {filename}: {str(e)}\")\n", "\n", "print(f\"Successfully uploaded {len(document_ids)} files to datastore\")\n", "print(f\"Document IDs: {document_ids}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "vKOhbEqON66g" }, "source": [ "### Optional: Inspect Documents\n", "\n", "If you'd like to take a look at the ingested documents, you can do so via GUI at [https://app.contextual.ai](https://app.contextual.ai?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)\n", "\n", "1. Navigate to your workspace \n", "2. Select **Datastores** on the left menu \n", "3. Select **Documents** \n", "4. Click on **Inspect** (once documents load)\n", "\n", "You will see your documents uploading in progress:" ] }, { "cell_type": "markdown", "metadata": { "id": "YXCAGHuwN66g" }, "source": [ "Once ingested, you can view the list of documents, see their metadata, and also delete documents via API.\n", "\n", "**Note:** It may take a few minutes for the document to be ingested and processed. If the documents are still being ingested, you will see `status='processing'`. Once ingestion is complete, the status will show as `status='completed'`.\n", "\n", "You can learn more about the metadata [here](https://docs.contextual.ai/api-reference/datastores-documents/get-document-metadata?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "QW9saxkGN66g", "outputId": "80d8ebca-ec77-4b1d-c0d7-68dbd6029ce6" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Document metadata: DocumentMetadata(id='c75ff84c-0a01-49d4-91e4-2692d2627f39', created_at='2025-09-02T16:12:09.990120', name='A_Rev_by_Mkt_Qtrly_Trend_Q425.pdf', status='completed', custom_metadata={}, custom_metadata_config={}, has_access=True, ingestion_config={'parsing': {'figure_captioning_prompt': None, 'figure_caption_mode': 'default', 'enable_split_tables': True, 'max_split_table_cells': 100, 'ocr_level': 'auto', 'use_hyperlink_extraction': False, 'enable_vlm_hierarchy_inference': True, 'layout_model': 'dit', 'vlm_captioning_model': None, 'vlm_hierarchy_model': None, 'vlm_doc_name_model': None, 'vlm_markdown_reviser_model': None}, 'chunking': {'chunking_mode': 'hierarchy_depth', 'max_chunk_length_tokens': 768, 'min_chunk_length_tokens': 384, 'enable_hierarchy_based_contextualization': True, 'enable_contextualization': None, 'enable_section_based_contextualization': None}, 'html_config': {'max_recursive_depth': 5, 'markdown_links_mode': 'EXTERNAL', 'precise_image_attribution': True, 'enable_section_extraction': True, 'enable_table_links_addition': True, 'max_chunk_length_tokens': 768, 'enable_v2_extraction_pipeline': True}, 'ingestion_types': None, 'enable_v2_extraction_pipeline': True, 'extraction': None}, updated_at=None)\n" ] } ], "source": [ "metadata = client.datastores.documents.metadata(datastore_id = datastore_id, document_id = document_ids[0])\n", "print(\"Document metadata:\", metadata)" ] }, { "cell_type": "markdown", "metadata": { "id": "9a_xaq-K4TuP" }, "source": [ "---\n", "\n", "## 🤖 Step 4: Agent Creation and Configuration\n", "\n", "Now you'll create our RAG agent that will interact with the documents you just ingested.\n", "\n", "You can customize the Agent using additional parameters such as:\n", "\n", "- **`system_prompt`** is used for the instructions that your RAG system references when generating responses. Note that this is the default prompt as of 9.02.25.\n", "- **`suggested_queries`** is a user experience feature, to prepopulate queries for the agent so a new user can see interesting examples. \n", "\n", "💡 Pro Tip: You can also configure or edit your agent in the UI at [app.contextual.ai](https://app.contextual.ai?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook), try changing the generation model to another LLM! \n", "\n", "You can find all the additional parameters [here](https://docs.contextual.ai/api-reference/agents/create-agent?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "DvU_PEFnJhDr", "outputId": "53e42cc7-126a-45d6-b707-2e610242a5bd" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Creating new agent\n", "Agent ID created: 296dc525-3bfc-4ed8-8513-658b9219b93d\n" ] } ], "source": [ "system_prompt = '''\n", "You are a helpful AI assistant created by Contextual AI to answer questions about relevant documentation provided to you. Your responses should be precise, accurate, and sourced exclusively from the provided information. Please follow these guidelines:\n", "* Only use information from the provided documentation. Avoid opinions, speculation, or assumptions.\n", "* Use the exact terminology and descriptions found in the provided content.\n", "* Keep answers concise and relevant to the user's question.\n", "* Use acronyms and abbreviations exactly as they appear in the documentation or query.\n", "* Apply markdown if your response includes lists, tables, or code.\n", "* Directly answer the question, then STOP. Avoid additional explanations unless specifically relevant.\n", "* If the information is irrelevant, simply respond that you don't have relevant documentation and do not provide additional comments or suggestions. Ignore anything that cannot be used to directly answer this query.\n", "'''\n", "\n", "agent_name = \"Demo\"\n", "\n", "# Get list of existing agents\n", "agents = client.agents.list()\n", "\n", "# Check if agent already exists\n", "existing_agent = next((agent for agent in agents if agent.name == agent_name), None)\n", "\n", "if existing_agent:\n", " agent_id = existing_agent.id\n", " print(f\"Using existing agent with ID: {agent_id}\")\n", "else:\n", " print(\"Creating new agent\")\n", " app_response = client.agents.create(\n", " name=agent_name,\n", " description=\"Helpful Grounded AI Assistant\",\n", " datastore_ids=[datastore_id],\n", " agent_configs={\n", " \"global_config\": {\n", " \"enable_multi_turn\": False # Turning this off for deterministic responses for this demo\n", " }\n", " },\n", " suggested_queries=[\n", " \"What was NVIDIA's annual revenue by fiscal year 2022 to 2025?\",\n", " \"When did NVIDIA's data center revenue overtake gaming revenue?\",\n", " \"What's the correlation between the distance between Neptune and the Sun and Burglary rates in the US?\",\n", " \"What's the correlation between Global revenue generated by Unilever Group and Google searches for 'lost my wallet'?\",\n", " \"Does this imply that Unilever Group's revenue is derived from lost wallets?\",\n", " \"What's the correlation between the distance between Neptune and the Sun and Global revenue generated by Unilever Group?\"\n", " ]\n", " )\n", " agent_id = app_response.id\n", " print(f\"Agent ID created: {agent_id}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "MkdUUIrQN66g" }, "source": [ "### Optional: Let's look at our Agent in the Platform\n", "Your agent is now available via GUI as well, if you'd like to try querying it there.\n", "\n", "Visit: [https://app.contextual.ai](https://app.contextual.ai?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)\n", "\n", "1. Navigate to your workspace \n", "2. Select **Agents** from the left menu \n", "3. Select your Agent \n", "4. Try a suggested query or type your question \n" ] }, { "cell_type": "markdown", "metadata": { "id": "5F3p2pU6Wfkz" }, "source": [ "---\n", "\n", "## 💬 Step 5: Query the Agent\n", "\n", "### Testing Your RAG Agent\n", "\n", "Now that our agent is configured and connected to our financial documents, let's test its capabilities with various types of queries.\n", "\n", "The required fields are:\n", "\n", "- **`agent_id`**: The unique identifier of your Agent \n", "- **`messages`**: A list of message(s) forming the user query \n", "\n", "Optional information includes parameters for `stream` and `conversation_id`. You can refer [here](https://docs.contextual.ai/api-reference/agents-query/query?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook) for more information.\n", "\n", "Let's try this query: **\"What was NVIDIA's annual revenue by fiscal year 2022 to 2025?\"**:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "BWnjE43cN66h", "outputId": "624086d0-4762-4d82-f5ce-71a68534cc67" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Based on the provided documentation, I can present NVIDIA's annual revenue for fiscal years 2022 through 2025. Here are the total annual figures derived from the quarterly data:\n", "\n", "For Fiscal Year 2022, the total annual revenue was $26,614 million, calculated from quarterly figures of $7,643 million in Q4, $7,103 million in Q3, $6,507 million in Q2, and $5,661 million in Q1.[2]()()\n", "\n", "For Fiscal Year 2023, the total annual revenue was $24,974 million, comprising quarterly revenues of $6,051 million in Q4, $5,931 million in Q3, $6,704 million in Q2, and $8,288 million in Q1.[2]()()\n", "\n", "For Fiscal Year 2024, the total annual revenue was $65,922 million, derived from quarterly figures of $22,103 million in Q4, $18,120 million in Q3, $13,507 million in Q2, and $7,192 million in Q1.[1]()()\n", "\n", "For Fiscal Year 2025, the total annual revenue was $130,497 million, calculated from quarterly revenues of $39,331 million in Q4, $35,082 million in Q3, $30,040 million in Q2, and $26,044 million in Q1.[1]()()\n", "\n", "These figures demonstrate a clear upward trend in NVIDIA's annual revenue across the specified fiscal years.\n" ] } ], "source": [ "query_result = client.agents.query.create(\n", " agent_id=agent_id,\n", " messages=[{\n", " \"content\": \"What was NVIDIA's annual revenue by fiscal year 2022 to 2025?\",\n", " \"role\": \"user\"\n", " }]\n", ")\n", "print(query_result.message.content)" ] }, { "cell_type": "markdown", "metadata": { "id": "pEetPdUcN66h" }, "source": [ "There is lots more information you can access from the query result. You can display the retrieved documents, for example. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 1000 }, "id": "pZxp5LMmA4Zr", "outputId": "075c8a83-6389-4ef0-f630-41d99e5f33f4" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "--- Processing Document 1 ---\n", "Retrieval Info for Document 1:\n" ] }, { "data": { "image/png": "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oScff5y+//5799xW/frRPvvuS02bNaXx74+jZ555hlasWEHFiJYtW9L+BxxAvXr3ouXLl9Nrr75Go99+m8rKypxTveOgHWmP4cOpUaNG9N6779Fzzz5Lq1atcs9CQtu2aUMDBg6k1159lYoVoMOuQ4bQkKFDnI6eOHEiPf3kU7RkyZJcGvDRyFGjaNXKlfTcc8/l6TE8A131zjvv0NKlS6mY4H2sbj260QEHHUSdO3em7779jp566kmaNvUzd2+vvfemrfr2pYpK9T33uzl01113OboedPDBTpctXbaMXnzhBXr/vfecXSwm362iooJat25NBxx0IPXs2ZOWLVtGr778iuOHsvJyatKkCe2z3740cOBA+n7h904vT5o0Kfc8fN/dhg2jli1a0KOPPuroo8JaIUlRv9qid+oVDXQ+CsWn/y7fn8Gv+T+ZNv9e+FzfEPBc+/btaffdd3cE94Og0CpHu3btqFWrVu47T1OsM1MR6wfad+hA2++wA838/HOaOnkKTZ0yxRl3GPXvFy1yjg4UzZrVa2iXXXel1atWU+NGjemMs86ijh060MsvvewU1emnn+6MV7Hzctt27eiss39NW/buldOivs2DdhpMJ596CjVv3tzphV/+8pe0+eZb0EsvvkjNmzWns885xznYxYq2bdvSlMmT6Y3XX6fdhu5Gx594IpWUlual6dS5s6NDj002yV3r2rUrXXrZZdS6VStauHAhFStgJ5o0bkwrV6ygF55/nlo0b04XXnSho1ubtm3p0MN/RtOmTXMO8uDBg+n4k050NmzjjTem35x3Hi2YP4/efP1152QfjMmBInJ8PNCmHXfckQYMGECvvfIqzZg+g351xhk0YOAAd2/TzTajX51xJk377DM3yDj88MNp5513zj2/cbeN6fyLLqRddt2leGeinRx1okN+8hP6ZNIkevONN2n48BF0+JFH5HwR6J8TTjyRDjzwQJo1a1aenmrRogUde9xxdPyJJ1Cjxo2o2OBfc3DwwYc4Ojz/3HPUuFEjuuCCC5ysAf222srZPmfzJk+hz2fOdM9hsqhp06b08ksv0Zxvv6Vzf/Mb6t2nd9HxUiaTcXLTt09fN8D4YtYXdNavf019+vZ1TT34Jz+hvfbam958/Q369ttv6Zxzz3V6CABtD/vZz+jYY45xk0Jhm48BQ6nqu4f+0qat9RUNSSTte9J9GWK1Nop60003dQYSo2U/A+eJ40d3/p0emHnBoOTjjz+mqVOn5t2Hc7ZmzRp7RBgRUYeABCxdsoSefvppN6vhB77g4zv++a9cur333ps222JzevONN6h3797UvVs3Oufss2nu3Ln01Vdf0eWXX06dOnVy34sVmOU55ZRTqOeWW9L4Dz5w1zytMEuPezBSICr0Qt+ttqIrfvtbmjhhIo3/YDz94Y9/dOn4TH4x4Y033sibLRsxcgQ1atiQVq5c6a7Bwfn5z39O3bt3z6XDrOvJp5xC8+fPp7/85S+0ePHionSgPbCidccdd7jvWAm8+fe3UOcNNqBPP/mEfnvpZW4FCHRp06atox8cpW23246WLVtKd/7nTreKsWrlKjryqKPo0UcecZMCxQS0/fXXX6fRo0e7mXbYzl2H7OrkZtz742jDDTekNWtW0zNPP+Nm73feeSfqVslPGJycVDnQh04rXlTQt998S5defHFuxQu+yIAB/Z2jDBoOGTrUrXhcf+219Mknn+T8Hkx2YtCKic+GDRpSMcL7YP/4xz/cas6q1atp1sxZdNPNNzkbhdVm4LOpU+nxxx/Pm+zFBNu/77jD/R7zzju008470RZb9HQrRsWGl156iV577TVn92HbsMK1+eabO7oMGbIrPfnE424lDDzVt08fN/kBX3fbbbel/fbbj2677TZ67733UpXlVbofIMjQq/CzyW8Or7UVDf+HRieNjixUr1jNZl9hHGEsoejQMf6FgviOzvL1GzJkiLvWq1cvtxyMZahhw4a5wQXCKkaMGOE6bNSoUc4x0esYEVG3AG/+8le/oosuvtgNiF24FPjQHX6dnQFD2IZfmt+yVy/69ptvcgob38vLyqhjx45Fyb9+puunhx7qaPHxRx/l3YcsY0XnjdffyDl+DRs1crooG95S4QwejBhChIqRRhxwZhCSN2XKlFxoKRzmo48+2v2eMnVKLu3W22zjQmSefeYZ50S2aNmS6gNgQzbbbDNaMH8Bffftt07OsHJYURmigdlDDEpALwxeERpUtqbMyeXipUvczCzkttiAtqOtGGRASlq1bu34afbsL909rLhiYu7IY46m/gMHUOcNN3ShiuAxyN4fbr6F3n1nLBUzMhUZqiivcPwCfoCvgVC82V9+6XQMBlo/+clP3KQQBvnwLfhLj5984gm6/fbbqbyiiCc3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IiIiIiLqEpXvq8voKxWhQ53W9v0ZBQ80QoOD0Nu/geDKRxxzRERERERERERERNQiKn3vimwUkTwtNvQSbu13TRcJavQeDW2PhbWbPfxm8IiICIeK/HjK7LdKecnYy5xJv+sr8uhg6cZ6RCZt0kceU1if+SaPPup7ZZP3J9ZXhPiovvNVNV6qx6RIE06f9B62eoeK6he8l6AxE+6qE/t4ys/ti8GCtgdD+vMyfaHvwavRQCPN4CFvH4ZyraqitFZo0KCBOxt4zZo1ubceAv68YA8+KELZ/A2JWl39b+TTsGFDKisrc3/WK9p9XkgLoD5aZ/lnmzZtSqtWrXLp6qUAReSQk6WSEtpu2+1o0qRJtHTpUsd7O+ywAw3eaScqLSmhDz/6iF5/7TVauXJljqcaNWpEu+22Gy1ZsoRGjx5dL3kJOmDIkCG07Xbb0eLFi+nFF16gzz77jNq0aUMHHXRQTiY9Zs+eTc8880y9CeH0/NWhQwfae++9acMuXWjWrFn0zNNP08KFC929bbbZhnYdMoQalJbSmDFjHC9B39UXfkI7mzdvTocccgg1adIk7963331LTz7xJHXq3Jn22msv6tixI02bNo2efeYZJ3f1DV4v7bTzzrR61Sp67bXX6OOPP3Z8BlnbZZddaLvtt6clixfTc889RzNmzKD6hi233JKGDh1a7fo7Y8fS5zNm0H777UddN9qIvvn6a0ejb775huobwC/gpb59+zp6Pf74484f8oCPtMfw4fTFrFn04YcfUn2zaQcedBC1a9s27/qSpUvpvXffdbwldTNkEHq7OjJUksnSOpOpbvP44CLNG8Br8rLtfG88AO09GKElFzjylvOev8O9ZobMMygE9sADD6SRI0fShhtu6O7Bwdhnn33cPf83aNAgd69du3a04447VhI944zG9ttvX62euId8hg8fTvvvv78z0EhrDaAaN27slO8BBxzg6gPnr3Xr1rmjgdu3b59zeJDvvvvu6z7riyGP0OF5DQOGAw88iH515hnUtHkzd2+jjTai4048gebNn0ezvviCjj7mGMdffFB7/PHH0+FHHOEc7PqKPffck4474QRnkHBW+AUXXkgbbbyxk/FWrVpRq9b4a00dOnWkvffbl1q1aV1vBhke4JUzzzqLem65JX366ae0884704knneT4CEb+nHPPpe+//57mzZ9PZ5x5Jg0YMKBe6Sbv9FTxSytq16E97bnP3tShY0en388991zq2qULTZk8mUaOGkVHHHkk1UfAfv7qjDNo7ty5tGjxYvr12WdTnz593D3Q5cijjnLONGTuwosucgPc+iZv0Odc9/TYbFOne8rLypzdb9e+vZtQ2rJ3b0ejli1b1isaebuHwSran33NQ1X7Mdj/+S9+4fw48Fh9O6E0k8lQixYtHO+Ah1q3bUO77bE7bbHFFm523l/HX9eNN6J9D9i/2uS6yJBKSjLOF0U6/sd9efnbX9Ou+3rW6ooGXy3g0AYT6ZdOUWGqEUDwrbfemj766CNnIHv27OlGeU8//bQbDcKxnzhxYs4B8zNPGCxsttlmNGHCBHetW7du7u+DDz5wKwy8rsgfDI8ZG8x2oS3oKD7q9gZqu+22o4033tjlg/v9+/d3s6yYrUBdULennnrK1Qd5YLSO5/DdD8r4ygi/nkexyk62+iNi/QL6slmzZs6523TzzahJ06Z5M++XXXwJfffdd+53h44daOA2W9NDDz3k+n/IbrvRsD12pxuuv8Hxc31cXoYDPXzECHrhuefovvvuc3KzUbeNadddd6V777mH/vjHP+bSwqhtuumm9MJzz9crWvnZ+k023YRuu/VWGv32aFpTtob223c/5xBtsskmtHTZUrr/vvuc7oLeg46ELqsvAI2gm2+77bbctYFbb029evWip598ilq2akldN+pKd9x+u5M16O9tt93W8RtWfuoTnTD59v7779N/77zTXcOsK2Tw888/p/0P2J/uu/deeumllxzP3fL7W2jrbbah5597juoTMLuMPwDvLzj11NNo+ZKl9MknnzgZu/VPf3I66NNPPqHrrr+eNthgA1q0aBHVJ2Ai7ZRTTqFnn32WHnv00Zwcgcf22XdfGjBwIF11xRU0fdo0qm9YvXo1/fuOO/JotVXfrejhhx92Ex03T56cu/ezn/2MmjZp6mTSArd0crJcfg8d9CRR628G5+FSac7VDRnx/IEIFQwMJHr37u0Um1+yxewKZnt79OhBX331lbuG8IA5c+bkOfFw+mEkINhY0kUHQiHC2cNAgwNGBIMRH16AwcIrr7xCCxYscI6ebwdGnnBg3nvvPZoyZYora/ny5blVFswYIn88jzKxTOrDFTCQgYHDs1A0qMvAgQPdLNCyZcvcQOrbb791AxesxsAxAF6r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2Yc23WQTWrFiBb1WKW8ou0PHDjR06G7UqXMn+nL2l07ewC98xrhJkya08y67OBl4/733gmV12agrDR0ylFq1auX4dcyYMbR69eq8NJ6HwVdvvP66uy9XivputRWtXrWKJk+eXOc0Qg+2bNmCdt9jDydvmdISeumFF2nSpEm59g/aaTD17tWblixZ4vQI73vQd+jQIdSqVWuaAZ311pu0ZPGScIFUQS1atKBtt9vOyW9ZJV9mSjK01Vb9aMcddqSKinIaPWYMfTrpE1cWeLBP3z6Obg1KG9DHEz6m9999rxp964RGFRVOprbZblvaZ999qF///tSocWMnB5D3qnYRtWrdigZuPZDefOPNrB9AFdSoUWMaNGgQ9e3bh5YtX05vv/UWfTb1M3vGvZJGTv8OHEjz58+nL2bNytIok6GeW/aknXba2cnWJ59+QmPHvON4G4qnQcMGtO2229LAgVs7ff7GG2/S5zNmZPV5HWumDbt0ob332Zt69+5Dy5cvd7L2zTff5DWrYcMGNHjwTvTBuHGOn4CmTZvSoMGDacteW9KSxYudPpo2bZpJHwyGhw4d6vjFY/q06fTuu++677B9g3faiXr16uVsxKuvvUrffv2N05nDhw93+kmSYuw7Yx3//lBA3cA30Offfvut47e33nrL9StscJ8+fbIJWb2/+uprp0NUVPJQy1ataOtttqE333gjx4+gD/ind+9etHDh9/TGm2/Q7FlZG5qBbejb1/kOoL2Ts/fez+optSDnnVQODsK+e9IExjoJnZKFWmETaeDThQwnBB8GQQIMjo6GoW7fvr0j8PTp053SB4PC2Ermh6KEkUda5AuGh6ABrVu3pu23357Gjh3rjNX6NsqOqB2g3zFLf+U1VzvFCgV86KGH0oL58+mll15yigazGVC24J199tvPKYibrr+B1qxZ4/jxwosvdoOGFe7+vvSPv/+dnn7yKVUhb7b55vTzX/yC5s2fRx06dKD99t+frrriSvroww+dgTrp5JOp8wadHe/uf8AB1Oupp+iv//fn3CAZjusuQ3al008/nf7+t7+vk4EG2oByzzjjTNpx8CAndzCaGHh8+sknrm6Qr+OPP56+m/MddenalUbtOYouuvAi+vqrr5w8H33M0VRWXk6LFy2iTAXRZ599Rq+++mq1gQbKgsL91Rln0Hbbb0czps+gYbsPc6sDV1z+WzfAg9I/8aQT6auvv3aO0d57702XXnwJffrpp65e5194IS1a9L1z1vc/8AB64P776a47/7tOJhWGjxhBp//i5zTnuznUrHlzOv6EE2jChAk0Z84c6tixI/3qzDNp+bJl1LxlC9r/wAPpT3/8o3MgATiVp/38dDdAadqsmWvX766+hsaPH6+WNXLUSDr5lFPoiy++oBbNs3S4+qqr6OOPP3b3fXvhaFxwwQX00ccfu4EGeBqzm3vutZfTq7iPASRoCB1bl0CdunXrRlddczU1btLElXfoYYfR3LlzHY2gly+97DLqvMEGNOfb72jUyFE0bNgwuuzSS13f+4HrL375S9pll13o0UcecQN77xTLsrr36EGXX/FbZ4y/X7jQ0ejBBx+ku++6K2/WEDx34kkn0YD+/emdMWOcbHMabtGzJ1140YX08EP/oylTptQpjVx9GjWiM846i3bYYQfnrMFWtWjenD755BMnI0cfc4zTNeCVtm3b0gEHHEBXXXklffjhh9S1a1e68uqrqXGjhm4QiYEK8rn+uuuqHHBBp+wArxOdetqprn/GvPOOowGuDxkylH51xq/cQBR02muffej6311L7733nhuc/eJXv6KSTMbprwMOPID+fccd9NCDD9U5jVC3kXuOolNPO43mfPcdtWjZwumgCR9/nDcwhT49/ee/oPbt2zlnGbyC64f85BA64sgjaTZo2KYN7bnnnnTRBRfS559/rpYHZxB6cMhuu9Fpp51Kf/6//3MDDZSzVb9+dMlll9KyZcto1cqVtN8B+9Pjjz5G//zHP9yzBxx4EB151JE08/PPXX+N3HNP+u1ll7mBTV2OMzbYcEO68qqrqFWrlvTV11/RIYccQt8vWkTPPvNMjrehQw89/Ge015570llnnJkbaPTt2zdH2w023ID23Xc/uvSSS0z+B9+dcMIJtGDhQmcP4VTD4YbfhYmpE048kYaPHOF0DtLutvswp3MWff89jRgxgrp3756lhZvUakHla8rok0mf0A+JYbvvTr8841eOn5o0buz0+cSJE53ewiDjJz/5iaszKAnZgA/x4EMP2QONDFGnzhvQaaef7gZmmCTDJBR08lFHH00HHnSQk2kMRGBDofdg4wcPGkTn/OZcWjB/geNE2LW7/vtfeuC++826u+7NvbTPRqG+b1o7WvBAQ2aetiAtvEq7zvNFh0JYYZQ33HBDN4MDhYfBApbakQbX4LzAqUAHQTHAQcRABaNlCAqMLxQKnt1ggw1os802c2m8kIApwOzasn1E/QH4CbNxnTt1ossuu4w+Gv8hdezUySk/3AMP/etf/3IzmStWrqCLL7nEzUjDWMA52ne//aisbA1dfOFFNH/BfLr44kvowAMOpFdffoWWLl1arTzMUF944YX05Zdf0lb9tqKrrr7aOQEYaMAJuO3WWx3/ouyrfneNm8G489//cTNKMAhQUEN2G+pmNNclIIs7DtqRnnv2WfrnP/5JzZs2o6bNmuYGQJjlwaAfqw9wYOEI9u3Txw00vLZ4/LHH6H8PPURUjs1oWdnUjPl2229Pu+66q3PCX37pJdp5113ovPPPpx123JFeefllNxM/Z+5cOv+889xM/TXXXEP9+vdz5X8xezY99MAD9MyzWUN63Q03uLwevP8BN1CsywkFzHaNHDnCGebfnHsurVi+wukezHyiXBgnOBdff/ONu37zLTfTzjvtTC+/+JJzsBFGBD644frrqUXLlnTTTTfRgQcfRB999FG1AVm79u2dk/T+++/TLTfeRK3btKEbb77ZGSoYQr/ZD3ryzLPOpE023TQ3AOnZs6dzPkGT+++/360AXf27a2iP4cPpnrvvproGeBr6/ZJLLqEJH31MnTp1cg4xgD565eVXaOKECc4pQxsP+9lh1GOTTejjjz5yOv7wIw53fXr7v/5FTz7xBJWtKVOdNdgGPAun/fxzz6O5c+fQWWef7Wa/wccY2Ph0cBjgaPKZXs77Z599tqvnulgWA99u2GVD2nGHHejpp5+mO/51u1vha9qkSc72jh//Ac2YMZ3efP0NNwi69vrr3OwzeAUTZ889+wy98cYbNG/uXDrr1792s9UdOnakr778slp54BPooJNPO9WFavlZegD8c9QxR7sBzu+uucY5UjfceCMdfMjBbgCMsq695nc0d84cp59uvuUW2nlnDAAfVeW7NmnUsFEjGjFipOuzC35zHq1csdI5b5A3366dd9mZTjzpZOrStQtN++yz3HXI6qBBg52fcN5vfkP9+/V3+h/OI2bQNT2BQRUmEbByK/XvN19/TY88/DA99+xztGr1Krr66qvd5Mg999xDrVu3okMPO9Styv7lz3+hDTfcwMkqbMcff/+HuqMRdOm221LXrl3oyiuvdCtNkDsM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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "--- Processing Document 2 ---\n", "Retrieval Info for Document 2:\n" ] }, { "data": { "image/png": "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G2y4gcyYMUMeuO9+uffee2X69Omy3PLLy+67797qREu4/99LL5X33nu/YccbOIl00003laefflrGjBkTru24006y6iqrSEtroz8Z9bFcdNFF0r9//8Bfyy67rIwdN05uv/02eeqJJ6u6qlGx6qqryuTJk+W1114L7VxttdVk+x12qLrHU6dODbL02aefVp9BusGDB8tqq68ud991VzL/en30zvSVm+thFBSKz/idz+XV1+Ifp629h7+OjeYjgbfaaqtgVOMgKLXKscACCwQmBnSavCqSMScAnoVB2vsrewfH59Zbb5U+ffrIcccfJ/0G9JcePXrIkUceKUOGDJHbb7tdFlxwsBzxoyPD9QjwLZzII4/6kay40krSqHRab/31ZM21hss999wTnLwf/PCH4TekdrHFFpPhw4fLG6+/Lq++/EpweqZMnlx9doklFpfjTjhBNt18s4Y2VAstvJDstc9XZMRLI+S+e+8NuvEb+38jtHmzLTaXFYYNkzvvuEM+/OAD+dGPfywrrrRiuLfccsvJkUcdJW+NfEueePwJ+drXvx4GK40KtLlP796y/wEHyCGHfkt69OxZ4zBikH/3XXfL+utvIId99zvStWtX6d2njxx19NHS3NQcaLjWWmvJN75RoW0jAu3q2qWrbLjxRnLiySfL0MUXrx5dv8eeewYddNstt0i3rl2DbMG2AqustqostOBCFTl8+ZXAUy0zZ0qjAnRafIkl5PgTjpdNN2vTL/gcOHCgPHD//fLSiJfksO98JzjawMILLyRrr7O2vPnGm4FGr73yqkyaNDnOujYMok/Vq1cv+ep++8lh3/uu9Ordq+rvrbbqqjJ4wQWrvDLyrbfCM1tuvZUsvewycscdd8gnH38sxxxzjCy7/HLSqOjSpUvgjRNOPFEWG7JYa4xDiwxZfGgYtL/+2muBPq+/+loYbESAVqDtd7//vWAfTYT5gsqAoYvhu6f+yqbt9BUNDR5gMLz77UOsOq6oMeIdOnSoLLLIIvLOO++Ea5E4GP3G3yive/fuwfA+99xzwRHR92FIMNMQr2VkfFHAbNYfL/xDmMkAD77/3vty9rnnyEILLhhmE1dYfnk5/vjjwyzHiy+8IL/81fmy9NJLy0svvRSeh6L59mGHybBhw4KT2GiIuuO+e++TRx5+RMZPGC89uvcIilm3GbNkN1x/Q1DEM1uX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d97pvvwHA7stt9oyGME33nhD7r/vfhk/fny4N2jQINl0s81kiSUWl1GjPpb77rtXPvrwo9o6SYssvPAisuyyy8ojDz8scxqRHxZdbDHZceedQv9NmjxJ7rnrbnn//fdDmsgvSy65pKy73npy+223BVpafNSrVy/ZfvvtpUcPNVhpqiyJ33XnXfLJJ5/IIosuKltssYUssMAC8vIrL8uDDzwoUyZPNvOCM/bg/Q/I5MmT57gj0Kt3L9liyy1k5513lp49ewV5e+7ZZwMNwVerrr6arLvuuqGeTz7xpDz99FMyc0Z7PkJ6GMU1hw+XtdZaS2bMmC5PPfmUPPvsszJjxoxwf+CgQbLFFpvL0KGLy4cffij33H134E0APL3W2muF55H+0UcekReef2GusBmgw2prrB7kbfRno6W5axd54L6KvK2yyipBFgNUV3700Udyz933uPVHnnh2iSWXDDSfOnVqO15Amg023FBee/VVGTVqVIW+aw2X4WuCRtPliSeflOeeebb0S71mN4YMqcjbqqusIpMnTZK777479HON/KgmzpzZInffdVdoWzs5aA17bO7SRdZbf3159dVX5dNPPqneHjhwYODbxRZbTEaOfEvuvfdemdCqsyD3m222qSy44ELyzjvvyH333SdjRo+e47LWs2fP4EDDtvUb0F9uvfkWefrpp2v6D/YPtg31fuH5513btsgiiwQ72dTcdu+N19+Qxx57LHwHrTfcaCNZaaWVZPTo0XL3PXfLRx98GORsm222CfTjeehHH3lU3nzzTZlTQN3WHL6m7LzLLkF+wO8PPPBAsMf9+/eXbbbbVropx/ujj0YFHdKS0BFBdldbTRYbMiTo+GnTptXQc6GFF5JNNt006GOUWUVrlosNWUwWX2JxeezRCl3bo83HrQwOJOm7p/ZXW8/M9uNtvYqVrUjbGwrt+0GJbbBB6EDG66+/Hoi+5pprBucDnQMH5OWXXw4Mus4667RjfhiHBx98MKRFvmB4KGJgwIABwVg9+uijrjHPyICi+fa3vy1bb7ONvDnyzWCIwW/PP/+8TJ8+ver4/vjoo+VLq3xJ/vWvf8nLL73sygSM+KmnnhqMFQzNjjvtJFdefoX837//HQYae+29d1A0cHaaWqSikO++Oyg25Ik0m2y2qXz3u9+VP//pz3PFQAOys/Emm8iPjjpKxowZHeT4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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "Total documents processed: 2\n" ] } ], "source": [ "import base64\n", "import io\n", "from PIL import Image\n", "import matplotlib.pyplot as plt\n", "\n", "def display_base64_image(base64_string, title=\"Document\"):\n", " # Decode base64 string\n", " img_data = base64.b64decode(base64_string)\n", "\n", " # Create PIL Image object\n", " img = Image.open(io.BytesIO(img_data))\n", "\n", " # Display using matplotlib\n", " plt.figure(figsize=(10, 10))\n", " plt.imshow(img)\n", " plt.axis('off')\n", " plt.title(title)\n", " plt.show()\n", "\n", " return img\n", "\n", "# Retrieve and display all referenced documents\n", "for i, retrieval_content in enumerate(query_result.retrieval_contents):\n", " print(f\"\\n--- Processing Document {i+1} ---\")\n", "\n", " # Get retrieval info for this document\n", " ret_result = client.agents.query.retrieval_info(\n", " message_id=query_result.message_id,\n", " agent_id=agent_id,\n", " content_ids=[retrieval_content.content_id]\n", " )\n", "\n", " print(f\"Retrieval Info for Document {i+1}:\")\n", "\n", " # Display the document image\n", " if ret_result.content_metadatas and ret_result.content_metadatas[0].page_img:\n", " base64_string = ret_result.content_metadatas[0].page_img\n", " img = display_base64_image(base64_string, f\"Document {i+1}\")\n", " else:\n", " print(f\"No image available for Document {i+1}\")\n", "\n", "print(f\"\\nTotal documents processed: {len(query_result.retrieval_contents)}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "B_xGrpPmA4Zr" }, "source": [ "# RAG Components Deep Dive\n", "\n", "With a complete RAG agent in place, we can now **zoom in on the core techniques** that make it work. Let’s explore **four key components** of a production-grade RAG system:\n", "\n", "1. Document Parser\n", "2. Instruction-Following Reranker\n", "3. Grounded Language Model (GLM)\n", "4. LMUnit: Natural Language Unit Testing\n", "\n", "Note that one key component is not listed here - that is the Datastore. We leverage an ElasticSearch vector database in our production ready RAG system, and have only included the components built by Contextual AI above." ] }, { "cell_type": "markdown", "metadata": { "id": "woHzAHMhA4Zr" }, "source": [ "## 1. Document Parser\n", "\n", "Parsing complex, unstructured documents is the critical foundation for agentic RAG systems. Failures in parsing cause these systems to miss critical context, degrading response accuracy.\n", "\n", "Our document parser combines the best of custom vision, OCR, and vision language models, along with specialized tools like table extractors—achieving superior accuracy and reliability by excelling in the following areas:\n", "\n", "- **Document-level understanding vs. page-by-page parsing**: Our parser understands the section hierarchies of long documents, equipping AI agents to understand relationships across hundreds of pages to generate contextually supported, accurate answers.\n", "- **Minimized hallucinations**: Our multi-stage pipeline minimizes severe hallucinations while providing accurate bounding boxes and confidence levels for table extraction to audit its output.\n", "- **Superior handling of complex modalities**: Our advanced system orchestrates the best models and specialized tools to handle the most challenging document elements, such as tables, charts, and figures.\n", "\n", "\n", "### Document Hierarchy\n", "\n", "Unlike traditional parsers, Contextual AI's solution understands how each page fits within the document's holistic structure and hierarchy, enabling AI agents to navigate long, complex documents with the same understanding a human would have. We automatically infer a document's hierarchy and structure, which enables developers to add metadata to each chunk that describes its position in the document. This improves retrieval and allows agents to understand how different sections relate to each other to provide answers that connect information across hundreds of pages.\n", "\n", "For more information about Contextual AI's document parser, you can read this [blog](https://contextual.ai/blog/document-parser-for-rag/?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)." ] }, { "cell_type": "markdown", "metadata": { "id": "oqyM6uwxA4Zs" }, "source": [ "Now, let's use ContextualAI's parser to parse the landmark \"Attention is All You Need\" paper to demonstrate the parser's capabilities." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "VONCRNHuA4Zs", "outputId": "6a1b77c5-6098-4f9a-f188-90e7bc3f9464" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Downloaded paper to data/attention-is-all-you-need.pdf\n" ] } ], "source": [ "# Download the Attention is All You Need paper from arXiv\n", "url = \"https://arxiv.org/pdf/1706.03762\"\n", "file_path = \"data/attention-is-all-you-need.pdf\"\n", "\n", "with open(file_path, \"wb\") as f:\n", " f.write(requests.get(url).content)\n", "\n", "print(f\"Downloaded paper to {file_path}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "dXogAR0iA4Zs" }, "source": [ "We'll configure the parser with the following settings:\n", "- **parse_mode**: \"standard\" for complex documents that require VLMs and OCR\n", "- **figure_caption_mode**: \"concise\" for brief figure descriptions\n", "- **enable_document_hierarchy**: True to capture document structure\n", "- **page_range**: \"0-5\" to parse the first 6 pages" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "0ykxgOBrA4Zs", "outputId": "30e556db-2442-4da5-f10e-6573b6c4be89" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Parse job submitted with ID: c447079c-408e-4d57-927b-c935b49e04d2\n" ] } ], "source": [ "# Setup headers for direct API calls\n", "base_url = \"https://api.contextual.ai/v1\"\n", "headers = {\n", " \"accept\": \"application/json\",\n", " \"authorization\": f\"Bearer {API_KEY}\"\n", "}\n", "\n", "# Submit parse job\n", "url = f\"{base_url}/parse\"\n", "\n", "config = {\n", " \"parse_mode\": \"standard\",\n", " \"figure_caption_mode\": \"concise\",\n", " \"enable_document_hierarchy\": True,\n", " \"page_range\": \"0-5\",\n", "}\n", "\n", "with open(file_path, \"rb\") as fp:\n", " file = {\"raw_file\": fp}\n", " result = requests.post(url, headers=headers, data=config, files=file)\n", " response = json.loads(result.text)\n", "\n", "job_id = response['job_id']\n", "print(f\"Parse job submitted with ID: {job_id}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "Gtl7As1LA4Zs" }, "source": [ "\n", "Now let's retrieve the parsed results. The parser provides multiple output types:\n", "- **Markdown-document**: A single Markdown for the entire document\n", "- **Markdown-per-page**: A list of Markdowns for each page of the document\n", "- **Blocks-per-page**: Structured JSON representations of content blocks sorted by reading order" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "Cavk8TDAA4Zs", "outputId": "37e2cd81-82b4-476d-d7b4-2a13aedd01db" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Parse job is completed.\n" ] } ], "source": [ "# Get the parse results\n", "url = f\"{base_url}/parse/jobs/{job_id}/results\"\n", "\n", "output_types = [\"markdown-per-page\"]\n", "\n", "result = requests.get(\n", " url,\n", " headers=headers,\n", " params={\"output_types\": \",\".join(output_types)},\n", ")\n", "\n", "result = json.loads(result.text)\n", "print(f\"Parse job is {result['status']}.\")" ] }, { "cell_type": "markdown", "metadata": { "id": "9G2KX2flA4Zs" }, "source": [ "When the parse job is completed (e.g., the above status is \"Parse job is completed. \"), we can examine the parsed content from the first page of the paper:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 719 }, "id": "p5I3g2iSA4Zs", "outputId": "97a46c17-3b0a-40f9-e700-b770990e7202" }, "outputs": [ { "data": { "text/markdown": [ "Provided proper attribution is provided, Google hereby grants permission to reproduce the tables and figures in this paper solely for use in journalistic or scholarly works.\n", "\n", "# Attention Is All You Need\n", "\n", "Noam Shazeer ∗ Google Brain noam@google.com\n", "\n", "Ashish Vaswani ∗ Google Brain avaswani@google.com\n", "\n", "Niki Parmar ∗ Google Research nikip@google.com\n", "\n", "Jakob Uszkoreit ∗ Google Research usz@google.com\n", "\n", "Aidan N. Gomez ∗† University of Toronto aidan@cs.toronto.edu\n", "\n", "Llion Jones ∗ Google Research llion@google.com\n", "\n", "Łukasz Kaiser ∗ Google Brain lukaszkaiser@google.com\n", "\n", "Illia Polosukhin ∗‡ illia.polosukhin@gmail.com\n", "\n", "## Abstract\n", "\n", "The dominant sequence transduction models are based on complex recurrent or convolutional neural networks that include an encoder and a decoder. The best performing models also connect the encoder and decoder through an attention mechanism. We propose a new simple network architecture, the Transformer, based solely on attention mechanisms, dispensing with recurrence and convolutions entirely. Experiments on two machine translation tasks show these models to be superior in quality while being more parallelizable and requiring significantly less time to train. Our model achieves 28.4 BLEU on the WMT 2014 English- to-German translation task, improving over the existing best results, including ensembles, by over 2 BLEU. On the WMT 2014 English-to-French translation task, our model establishes a new single-model state-of-the-art BLEU score of 41.8 after training for 3.5 days on eight GPUs, a small fraction of the training costs of the best models from the literature. We show that the Transformer generalizes well to other tasks by applying it successfully to English constituency parsing both with large and limited training data.\n", "\n", "∗ Equal contribution. Listing order is random. Jakob proposed replacing RNNs with self-attention and started the effort to evaluate this idea. Ashish, with Illia, designed and implemented the first Transformer models and has been crucially involved in every aspect of this work. Noam proposed scaled dot-product attention, multi-head attention and the parameter-free position representation and became the other person involved in nearly every detail. Niki designed, implemented, tuned and evaluated countless model variants in our original codebase and tensor2tensor. Llion also experimented with novel model variants, was responsible for our initial codebase, and efficient inference and visualizations. Lukasz and Aidan spent countless long days designing various parts of and implementing tensor2tensor, replacing our earlier codebase, greatly improving results and massively accelerating our research.\n", "\n", "† Work performed while at Google Brain.\n", "\n", "‡ Work performed while at Google Research." ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Display the first page's parsed markdown\n", "if 'pages' in result and len(result['pages']) > 0:\n", " display(Markdown(result['pages'][0]['markdown']))\n", "else:\n", " print(\"No parsed content available. Please check if the job completed successfully.\")" ] }, { "cell_type": "markdown", "metadata": { "id": "jX5ISR8n1EWk" }, "source": [ "To see job results in an interactive manner and submit new jobs, navigate to the UI using the following link by running the cell below. Note you'll need to change `\"your-tenant-name\"` to your tenant." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "f2TQmC9w183C", "outputId": "b671ffa0-d323-4a27-ef6e-f381a39af70a" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "https://app.contextual.ai/your-tenant-name/components/parse?job=c447079c-408e-4d57-927b-c935b49e04d2\n" ] } ], "source": [ "tenant = \"your-tenant-name\"\n", "print(f\"https://app.contextual.ai/{tenant}/components/parse?job={job_id}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "pMjEeRd32K6Y" }, "source": [ "
\n", "\"Document\n", "
\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "zG6za87T2hnH" }, "source": [ "For more example code for Contextual AI's Parser, see our [parse examples notebook](https://github.com/ContextualAI/examples/tree/main/03-standalone-api/04-parse?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)" ] }, { "cell_type": "markdown", "metadata": { "id": "2PxkRUhdA4Zt" }, "source": [ "## 2. Instruction-Following Reranker\n", "\n", "Enterprise RAG systems often deal with conflicting information in their knowledge bases. Marketing materials can conflict with product materials, documents in Google Drive could conflict with those in Microsoft Office, Q2 notes conflict with Q1 notes, and so on. You can tell our reranker how to resolve these conflicts with instructions like:\n", "\n", "- \"Prioritize internal sales documents over market analysis reports. More recent documents should be weighted higher. Enterprise portal content supersedes distributor communications.\"\n", "- \"Emphasize forecasts from top-tier investment banks. Recent analysis should take precedence. Disregard aggregator sites and favor detailed research notes over news summaries.\"\n", "\n", "This enables an unprecedented level of control that improves RAG performance significantly.\n", "\n", "\n", "### State-of-the-Art Performance\n", "\n", "Contextual AI's SOTA reranker (v2) is the most accurate in the world with or without instructions – outperforming competitors by large margins on the industry-standard BEIR benchmark (V1), our internal financial and field engineering datasets (V1), and our novel instruction-following reranker evaluation datasets (V1).\n", "\n", "
\n", "\"Document\n", "
\n", "\n", "\n", "For more information about Contextual AI's reranker V2, you can read this [blog](https://contextual.ai/blog/rerank-v2/?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook), where we also share links to open-source weights and our novel evaluation dataset.\n", "\n", "For more information about Contextual AI's reranker V1, you can read this [blog](https://contextual.ai/blog/introducing-instruction-following-reranker/?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)." ] }, { "cell_type": "markdown", "metadata": { "id": "2etJISDvA4Zt" }, "source": [ "Let's demonstrate the reranker's instruction-following capabilities with a realistic enterprise scenario. We'll use a query about enterprise GPU pricing and see how the reranker handles conflicting information based on our instructions." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "rP00ajxwA4Zt" }, "outputs": [], "source": [ "# Define our query and instruction\n", "query = \"What is the current enterprise pricing for the RTX 5090 GPU for bulk orders?\"\n", "\n", "instruction = \"Prioritize internal sales documents over market analysis reports. More recent documents should be weighted higher. Enterprise portal content supersedes distributor communications.\"\n", "\n", "# Sample documents with conflicting information\n", "documents = [\n", " \"Following detailed cost analysis and market research, we have implemented the following changes: AI training clusters will see a 15% uplift in raw compute performance, enterprise support packages are being restructured, and bulk procurement programs (100+ units) for the RTX 5090 Enterprise series will operate on a $2,899 baseline.\",\n", " \"Enterprise pricing for the RTX 5090 GPU bulk orders (100+ units) is currently set at $3,100-$3,300 per unit. This pricing for RTX 5090 enterprise bulk orders has been confirmed across all major distribution channels.\",\n", " \"RTX 5090 Enterprise GPU requires 450W TDP and 20% cooling overhead.\"\n", "]\n", "\n", "# Metadata that helps distinguish document sources and dates\n", "metadata = [\n", " \"Date: January 15, 2025. Source: NVIDIA Enterprise Sales Portal. Classification: Internal Use Only\",\n", " \"TechAnalytics Research Group. 11/30/2023.\",\n", " \"January 25, 2025; NVIDIA Enterprise Sales Portal; Internal Use Only\"\n", "]\n", "\n", "# Use the instruction-following reranker model\n", "model = \"ctxl-rerank-en-v1-instruct\"" ] }, { "cell_type": "markdown", "metadata": { "id": "xpLL8MEQA4Zt" }, "source": [ "Now let's see how the reranker processes our query and instructions to properly rank the documents:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "0mYFmjHqA4Zt", "outputId": "c111bdbc-fb4b-4e17-cfbc-fa15ce11c2b6" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Reranking Results:\n", "==================================================\n", "{'results': [{'index': 0, 'relevance_score': 0.99995809}, {'index': 1, 'relevance_score': 0.99911428}, {'index': 2, 'relevance_score': 0.99082611}]}\n" ] } ], "source": [ "# Execute the reranking\n", "rerank_response = client.rerank.create(\n", " query=query,\n", " instruction=instruction,\n", " documents=documents,\n", " metadata=metadata,\n", " model=model\n", ")\n", "\n", "print(\"Reranking Results:\")\n", "print(\"=\" * 50)\n", "print(rerank_response.to_dict())" ] }, { "cell_type": "markdown", "metadata": { "id": "S0ZKTienA4Zu" }, "source": [ "Let's examine how the reranker prioritized the documents based on our instructions:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "bERNcAFwA4Zu", "outputId": "d4437b42-5b68-4ad7-dfa3-93aa0e48307e" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Ranked Documents (by relevance score):\n", "============================================================\n", "\n", "Rank 1: Score 1.0000\n", "Document 1:\n", "Content: Following detailed cost analysis and market research, we have implemented the following changes: AI ...\n", "Metadata: Date: January 15, 2025. Source: NVIDIA Enterprise Sales Portal. Classification: Internal Use Only\n", "----------------------------------------\n", "\n", "Rank 2: Score 0.9991\n", "Document 2:\n", "Content: Enterprise pricing for the RTX 5090 GPU bulk orders (100+ units) is currently set at $3,100-$3,300 p...\n", "Metadata: TechAnalytics Research Group. 11/30/2023.\n", "----------------------------------------\n", "\n", "Rank 3: Score 0.9908\n", "Document 3:\n", "Content: RTX 5090 Enterprise GPU requires 450W TDP and 20% cooling overhead....\n", "Metadata: January 25, 2025; NVIDIA Enterprise Sales Portal; Internal Use Only\n", "----------------------------------------\n" ] } ], "source": [ "# Display ranked results in a more readable format\n", "print(\"\\nRanked Documents (by relevance score):\")\n", "print(\"=\" * 60)\n", "\n", "for i, result in enumerate(rerank_response.results):\n", " doc_index = result.index\n", " score = result.relevance_score\n", "\n", " print(f\"\\nRank {i+1}: Score {score:.4f}\")\n", " print(f\"Document {doc_index + 1}:\")\n", " print(f\"Content: {documents[doc_index][:100]}...\")\n", " print(f\"Metadata: {metadata[doc_index]}\")\n", " print(\"-\" * 40)" ] }, { "cell_type": "markdown", "metadata": { "id": "bV6C_ymGA4Zu" }, "source": [ "Let's compare how the same documents are ranked without specific instructions to see the difference:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "Nl7zfIVpA4Zu", "outputId": "189a90c7-bd87-4a73-afa5-300db34b0aa4" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Ranking WITHOUT Instructions:\n", "==================================================\n", "Rank 1: Document 2, Score: 0.9998\n", "Rank 2: Document 1, Score: 0.9989\n", "Rank 3: Document 3, Score: 0.6510\n", "\n", "Ranking WITH Instructions:\n", "==================================================\n", "Rank 1: Document 1, Score: 1.0000\n", "Rank 2: Document 2, Score: 0.9991\n", "Rank 3: Document 3, Score: 0.9908\n" ] } ], "source": [ "# Rerank without instructions for comparison\n", "rerank_no_instruction = client.rerank.create(\n", " query=query,\n", " documents=documents,\n", " metadata=metadata,\n", " model=model\n", ")\n", "\n", "print(\"\\nRanking WITHOUT Instructions:\")\n", "print(\"=\" * 50)\n", "\n", "for i, result in enumerate(rerank_no_instruction.results):\n", " doc_index = result.index\n", " score = result.relevance_score\n", "\n", " print(f\"Rank {i+1}: Document {doc_index + 1}, Score: {score:.4f}\")\n", "\n", "print(\"\\nRanking WITH Instructions:\")\n", "print(\"=\" * 50)\n", "\n", "for i, result in enumerate(rerank_response.results):\n", " doc_index = result.index\n", " score = result.relevance_score\n", "\n", " print(f\"Rank {i+1}: Document {doc_index + 1}, Score: {score:.4f}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "saQoDU986vn7" }, "source": [ "For more example code for Contextual AI's Reranker V2, see our [reranker examples notebook](https://github.com/ContextualAI/examples/tree/main/03-standalone-api/03-rerank?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)" ] }, { "cell_type": "markdown", "metadata": { "id": "0DQrfaZFA4Zu" }, "source": [ "## 3. Grounded Language Model (GLM)\n", "\n", "Contextual AI's Grounded Language Model (GLM) is the most grounded language model in the world, engineered specifically to minimize hallucinations for RAG and agentic use cases.\n", "\n", "With state-of-the-art performance on [FACTS](https://www.kaggle.com/benchmarks/google/facts-grounding) (the leading groundedness benchmark) and our customer datasets, the GLM is the single best language model for RAG and agentic use cases for which minimizing hallucinations is critical. You can trust that the GLM will stick to the knowledge sources you give it.\n", "\n", "In enterprise AI applications, hallucinations from the LLM pose a critical risk that can degrade customer experience, damage company reputation, and misguide business decisions. Yet the ability to hallucinate is seen as a useful feature in general-purpose foundation models, especially in serving consumer queries that require creative, novel responses. In contrast, the GLM is engineered specifically to minimize hallucinations for RAG and agentic use cases – delivering precise responses that are strongly grounded in and attributable to specific retrieved source data, not its parametric knowledge learned from training data.\n", "\n", "\n", "### Groundedness Definition\n", "\n", "\"Groundedness\" refers to the degree to which an LLM's generated output is supported by and accurately reflects the retrieved information provided to it. Given a query and a set of documents, a grounded model either responds only with relevant information from the documents or declines to answer if the documents are not relevant. In contrast, an ungrounded model may hallucinate based on patterns learned from its training data.\n", "\n", "For more information about GLM, you can read this [blog](https://contextual.ai/blog/introducing-grounded-language-model/?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)." ] }, { "cell_type": "markdown", "metadata": { "id": "_7o84lSkA4Zu" }, "source": [ "\n", "Let's demonstrate the GLM's ability to generate grounded responses using comprehensive knowledge sources about renewable energy in developing nations." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "e-erJXyIA4Zu" }, "outputs": [], "source": [ "# Example conversation messages\n", "messages = [\n", " {\n", " \"role\": \"user\",\n", " \"content\": \"What are the most promising renewable energy technologies for addressing climate change in developing nations?\"\n", " },\n", " {\n", " \"role\": \"assistant\",\n", " \"content\": \"Based on current research, solar and wind power show significant potential for developing nations due to decreasing costs and scalability. Would you like to know more about specific implementation challenges and success stories?\"\n", " },\n", " {\n", " \"role\": \"user\",\n", " \"content\": \"Yes, please tell me about successful solar implementations in Africa and their economic impact, particularly focusing on rural electrification.\"\n", " }\n", "]\n", "\n", "# Detailed knowledge sources with varied information\n", "knowledge = [\n", " \"\"\"According to the International Renewable Energy Agency (IRENA) 2023 report:\n", " - Solar PV installations in Africa reached 10.4 GW in 2022\n", " - The cost of solar PV modules decreased by 80% between 2010 and 2022\n", " - Rural electrification projects have provided power to 17 million households\"\"\",\n", "\n", " \"\"\"Case Study: Rural Electrification in Kenya (2020-2023)\n", " - 2.5 million households connected through mini-grid systems\n", " - Average household income increased by 35% after electrification\n", " - Local businesses reported 47% growth in revenue\n", " - Education outcomes improved with 3 additional study hours per day\"\"\",\n", "\n", " \"\"\"Economic Analysis of Solar Projects in Sub-Saharan Africa:\n", " - Job creation: 25 jobs per MW of installed capacity\n", " - ROI average of 12-15% for mini-grid projects\n", " - Reduced energy costs by 60% compared to diesel generators\n", " - Carbon emissions reduction: 2.3 million tonnes CO2 equivalent\"\"\",\n", "\n", " \"\"\"Technical Specifications and Best Practices:\n", " - Optimal solar panel efficiency in African climate conditions: 15-22%\n", " - Battery storage requirements: 4-8 kWh per household\n", " - Maintenance costs: $0.02-0.04 per kWh\n", " - Expected system lifetime: 20-25 years\"\"\",\n", "\n", " \"\"\"Social Impact Assessment:\n", " - Women-led businesses increased by 45% in electrified areas\n", " - Healthcare facilities reported 72% improvement in service delivery\n", " - Mobile money usage increased by 60%\n", " - Agricultural productivity improved by 28% with electric irrigation\"\"\"\n", "]" ] }, { "cell_type": "markdown", "metadata": { "id": "cR5vUNSMA4Zu" }, "source": [ "\n", "Now let's use the GLM to generate a grounded response based on the provided knowledge sources:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "xFF31bZ3A4Zv", "outputId": "8fbe4abd-94e8-4b45-dc01-7511e31d96c2" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "GLM Grounded Response:\n", "==================================================\n", "Let me share the current state of solar energy implementation in Africa, focusing on rural electrification and its economic impact:\n", "\n", "Africa has seen significant solar PV adoption, with total installations reaching 10.4 GW by 2022, supported by an 80% decrease in solar PV module costs between 2010 and 2022.\n", "\n", "The impact on rural electrification has been particularly noteworthy:\n", "\n", "Key achievements include:\n", "- 17 million households have gained access to electricity through rural electrification projects\n", "- In Kenya specifically, 2.5 million households have been connected through mini-grid systems between 2020-2023\n", "\n", "The economic benefits have been substantial:\n", "\n", "Direct economic impacts include:\n", "- Average household income increased by 35% after electrification\n", "- Local businesses experienced 47% revenue growth\n", "- Solar projects create approximately 25 jobs per MW of installed capacity\n", "- Mini-grid projects typically achieve a 12-15% return on investment\n", "- Energy costs have been reduced by 60% compared to traditional diesel generators\n", "\n", "The broader social and economic transformation is also significant:\n", "\n", "Social and economic improvements include:\n", "- 45% increase in women-led businesses in electrified areas\n", "- 72% improvement in healthcare facility service delivery\n", "- 60% increase in mobile money usage\n", "- 28% improvement in agricultural productivity with electric irrigation\n", "\n", "From a technical perspective, the implementations have proven sustainable:\n", "\n", "Technical performance metrics show:\n", "- Systems maintain efficiency of 15-22% in African climate conditions\n", "- Expected system lifetimes of 20-25 years\n", "- Maintenance costs are relatively low at $0.02-0.04 per kWh\n", "\n", "These statistics demonstrate the transformative potential of solar energy in African rural development, offering both economic benefits and improved quality of life.\n" ] } ], "source": [ "# Setup for direct API call\n", "base_url = \"https://api.contextual.ai/v1\"\n", "generate_api_endpoint = f\"{base_url}/generate\"\n", "\n", "headers = {\n", " \"accept\": \"application/json\",\n", " \"content-type\": \"application/json\",\n", " \"authorization\": f\"Bearer {API_KEY}\"\n", "}\n", "\n", "# Configure the GLM request\n", "payload = {\n", " \"model\": \"v1\",\n", " \"messages\": messages,\n", " \"knowledge\": knowledge,\n", " \"avoid_commentary\": False,\n", " \"max_new_tokens\": 1024,\n", " \"temperature\": 0,\n", " \"top_p\": 0.9\n", "}\n", "\n", "# Generate the response\n", "generate_response = requests.post(generate_api_endpoint, json=payload, headers=headers)\n", "\n", "print(\"GLM Grounded Response:\")\n", "print(\"=\" * 50)\n", "print(generate_response.json()['response'])" ] }, { "cell_type": "markdown", "metadata": { "id": "3eqStijfA4Zv" }, "source": [ "The GLM has an `avoid_commentary` flag to control groundedness. Let's see how this affects the response:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "3pF1XfriA4Zv", "outputId": "b1b31f73-132f-4f7b-9adf-c269fc6e3b56" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "GLM Response (with avoid_commentary=True):\n", "==================================================\n", "Africa has seen significant solar energy adoption, with total solar PV installations reaching 10.4 GW by 2022, driven by an 80% decrease in solar module costs since 2010. These efforts have already provided electricity to 17 million households through rural electrification projects.\n", "\n", "\n", "\n", "In Kenya, a notable case study from 2020-2023 demonstrated substantial economic benefits:\n", "- 2.5 million households were connected through mini-grid systems\n", "- Average household income increased by 35%\n", "- Local businesses saw 47% revenue growth\n", "- Students gained 3 additional study hours per day\n", "\n", "The economic impact extends beyond individual households:\n", "- Solar projects create 25 jobs per MW of installed capacity\n", "- Mini-grid projects typically achieve 12-15% ROI\n", "- Energy costs have been reduced by 60% compared to diesel generators\n", "- These initiatives have resulted in 2.3 million tonnes CO2 equivalent in emissions reduction\n", "\n", "The social impact has been particularly significant:\n", "- Women-led businesses increased by 45% in electrified areas\n", "- Healthcare facilities reported a 72% improvement in service delivery\n", "- Mobile money usage increased by 60%\n", "- Agricultural productivity improved by 28% with electric irrigation\n", "\n", "\n", "\n", "From a technical perspective, these systems have proven reliable with:\n", "- 20-25 year system lifetimes\n", "- Maintenance costs of $0.02-0.04 per kWh\n", "- Optimal solar panel efficiency of 15-22% in African climate conditions\n" ] } ], "source": [ "# Generate response with avoid_commentary enabled\n", "payload_no_commentary = payload.copy()\n", "payload_no_commentary[\"avoid_commentary\"] = True\n", "\n", "generate_response_no_commentary = requests.post(generate_api_endpoint, json=payload_no_commentary, headers=headers)\n", "\n", "print(\"GLM Response (with avoid_commentary=True):\")\n", "print(\"=\" * 50)\n", "print(generate_response_no_commentary.json()['response'])" ] }, { "cell_type": "markdown", "metadata": { "id": "gR-yLJNBA4Zv" }, "source": [ "\n", "Let's compare the two responses to understand the difference:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "8dbaPI7EA4Zv", "outputId": "faa742ab-f980-4323-8534-253c3b428286" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "COMPARISON:\n", "============================================================\n", "\n", "1. Standard GLM Response (avoid_commentary=False):\n", "--------------------------------------------------\n", "Let me share the current state of solar energy implementation in Africa, focusing on rural electrification and its economic impact:\n", "\n", "Africa has seen significant solar PV adoption, with total installations reaching 10.4 GW by 2022, supported by an 80% decrease in solar PV module costs between 2010 and 2022.\n", "\n", "The impact on rural electrification has been particularly noteworthy:\n", "\n", "Key achievements include:\n", "- 17 million households have gained access to electricity through rural electrification projects\n", "- In Kenya specifically, 2.5 million households have been connected through mini-grid systems between 2020-2023\n", "\n", "The economic benefits have been substantial:\n", "\n", "Direct economic impacts include:\n", "- Average household income increased by 35% after electrification\n", "- Local businesses experienced 47% revenue growth\n", "- Solar projects create approximately 25 jobs per MW of installed capacity\n", "- Mini-grid projects typically achieve a 12-15% return on investment\n", "- Energy costs have been reduced by 60% compared to traditional diesel generators\n", "\n", "The broader social and economic transformation is also significant:\n", "\n", "Social and economic improvements include:\n", "- 45% increase in women-led businesses in electrified areas\n", "- 72% improvement in healthcare facility service delivery\n", "- 60% increase in mobile money usage\n", "- 28% improvement in agricultural productivity with electric irrigation\n", "\n", "From a technical perspective, the implementations have proven sustainable:\n", "\n", "Technical performance metrics show:\n", "- Systems maintain efficiency of 15-22% in African climate conditions\n", "- Expected system lifetimes of 20-25 years\n", "- Maintenance costs are relatively low at $0.02-0.04 per kWh\n", "\n", "These statistics demonstrate the transformative potential of solar energy in African rural development, offering both economic benefits and improved quality of life.\n", "\n", "\n", "2. Strict Grounding Mode (avoid_commentary=True):\n", "--------------------------------------------------\n", "Africa has seen significant solar energy adoption, with total solar PV installations reaching 10.4 GW by 2022, driven by an 80% decrease in solar module costs since 2010. These efforts have already provided electricity to 17 million households through rural electrification projects.\n", "\n", "\n", "\n", "In Kenya, a notable case study from 2020-2023 demonstrated substantial economic benefits:\n", "- 2.5 million households were connected through mini-grid systems\n", "- Average household income increased by 35%\n", "- Local businesses saw 47% revenue growth\n", "- Students gained 3 additional study hours per day\n", "\n", "The economic impact extends beyond individual households:\n", "- Solar projects create 25 jobs per MW of installed capacity\n", "- Mini-grid projects typically achieve 12-15% ROI\n", "- Energy costs have been reduced by 60% compared to diesel generators\n", "- These initiatives have resulted in 2.3 million tonnes CO2 equivalent in emissions reduction\n", "\n", "The social impact has been particularly significant:\n", "- Women-led businesses increased by 45% in electrified areas\n", "- Healthcare facilities reported a 72% improvement in service delivery\n", "- Mobile money usage increased by 60%\n", "- Agricultural productivity improved by 28% with electric irrigation\n", "\n", "\n", "\n", "From a technical perspective, these systems have proven reliable with:\n", "- 20-25 year system lifetimes\n", "- Maintenance costs of $0.02-0.04 per kWh\n", "- Optimal solar panel efficiency of 15-22% in African climate conditions\n", "\n", "\n", "Key Differences:\n", "- Standard mode may include helpful context and commentary\n", "- Strict mode focuses purely on information from knowledge sources\n", "- Both modes maintain strong grounding in provided sources\n" ] } ], "source": [ "print(\"COMPARISON:\")\n", "print(\"=\" * 60)\n", "print(\"\\n1. Standard GLM Response (avoid_commentary=False):\")\n", "print(\"-\" * 50)\n", "print(generate_response.json()['response'])\n", "\n", "print(\"\\n\\n2. Strict Grounding Mode (avoid_commentary=True):\")\n", "print(\"-\" * 50)\n", "print(generate_response_no_commentary.json()['response'])\n", "\n", "print(\"\\n\\nKey Differences:\")\n", "print(\"- Standard mode may include helpful context and commentary\")\n", "print(\"- Strict mode focuses purely on information from knowledge sources\")\n", "print(\"- Both modes maintain strong grounding in provided sources\")" ] }, { "cell_type": "markdown", "metadata": { "id": "0KM_Z2jaA4Zv" }, "source": [ "\n", "Let's test how the GLM handles a query when provided with irrelevant knowledge sources:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "FWMQKt0-A4Zv", "outputId": "604800cf-ab96-4b88-94cf-35ee886aa829" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "GLM Response to Irrelevant Query:\n", "==================================================\n", "Query: What are the latest developments in quantum computing hardware?\n", "Knowledge provided: Renewable energy information\n", "\n", "GLM Response:\n", "I apologize, but I don't have any documentation about quantum computing hardware developments. The information I have access to is entirely focused on renewable energy and solar power implementations in Africa. If you'd like to know about solar energy developments or rural electrification projects, I'd be happy to help with that!\n" ] } ], "source": [ "# Query about a completely different topic\n", "different_query = [\n", " {\n", " \"role\": \"user\",\n", " \"content\": \"What are the latest developments in quantum computing hardware?\"\n", " }\n", "]\n", "\n", "# Same renewable energy knowledge (irrelevant to quantum computing)\n", "irrelevant_payload = {\n", " \"model\": \"v1\",\n", " \"messages\": different_query,\n", " \"knowledge\": knowledge, # Still about renewable energy\n", " \"avoid_commentary\": False,\n", " \"max_new_tokens\": 512,\n", " \"temperature\": 0,\n", " \"top_p\": 0.9\n", "}\n", "\n", "irrelevant_response = requests.post(generate_api_endpoint, json=irrelevant_payload, headers=headers)\n", "\n", "print(\"GLM Response to Irrelevant Query:\")\n", "print(\"=\" * 50)\n", "print(\"Query: What are the latest developments in quantum computing hardware?\")\n", "print(\"Knowledge provided: Renewable energy information\")\n", "print(\"\\nGLM Response:\")\n", "print(irrelevant_response.json()['response'])" ] }, { "cell_type": "markdown", "metadata": { "id": "zmOLoMIbEwfw" }, "source": [ "For more example code for Contextual AI's Grounded Language Model, see our [GLM examples notebook](https://github.com/ContextualAI/examples/tree/main/03-standalone-api/02-generate?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)" ] }, { "cell_type": "markdown", "metadata": { "id": "XebdZpTAA4Zv" }, "source": [ "## 4. LMUnit: Natural Language Unit Testing\n", "\n", " Evaluation, while not part of the core RAG pipeline, is a critical component to validating a RAG system before deploying to production. LMUnit is a language model optimized for evaluating natural language unit tests. LMUnit brings the rigor, familiarity, and accessibility of traditional software engineering unit testing to Large Language Model (LLM) evaluation.\n", "\n", "LMUnit sets the state of the art for fine-grained evaluation, as measured by FLASK and BiGGen Bench, and performs on par with frontier models for coarse evaluation of long-form responses (per LFQA). The model also demonstrates exceptional alignment with human preferences, ranking in the top 5 of the RewardBench benchmark with 93.5% accuracy.\n", "\n", "### Natural Language Unit Tests\n", "\n", "A unit test is a specific, clear, testable statement or question in natural language about a desirable quality of an LLM's response. Just as traditional unit tests check individual functions in software, unit tests in this paradigm evaluate discrete qualities of individual model outputs – from basic accuracy and formatting to complex reasoning and domain-specific requirements.\n", "\n", "### Types of Unit Tests\n", "\n", "- **Global unit tests**: Applied to all queries in an evaluation set (e.g., \"Does the response maintain a formal style?\")\n", "- **Targeted unit tests**: Focused assessment of query-level details (e.g., for \"Describe Stephen Curry's legacy\" → \"Does the response mention that Stephen Curry is the greatest shooter in NBA history?\")\n", "\n", "For more information about LMUnit, you can read this [blog](https://contextual.ai/lmunit/?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)." ] }, { "cell_type": "markdown", "metadata": { "id": "60ULUZQ_A4Zv" }, "source": [ "Let's start with a basic example to understand how LMUnit works. LMUnit takes three inputs: a query, a response, and a unit test, then produces a continuous score between 1 and 5." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "GdoByxEBA4Zv", "outputId": "b63b86c9-f6ae-4b1b-fdfb-6d6f806f43a2" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Unit Test: Does the response avoid unnecessary information?\n", "Score: 1.96/5\n", "\n", "Analysis: The response includes additional quarterly trends beyond the specific Q4 request,\n", "which explains the lower score for avoiding unnecessary information.\n" ] } ], "source": [ "# Simple example\n", "query = \"What was NVIDIA's Data Center revenue in Q4 FY25?\"\n", "\n", "response = \"\"\"NVIDIA's Data Center revenue for Q4 FY25 was $35,580 million.\n", "\n", "This represents a significant increase from the previous quarter (Q3 FY25) when Data Center revenue was $30,771 million.\n", "\n", "The full quarterly trend for Data Center revenue in FY25 was:\n", "- Q4 FY25: $35,580 million\n", "- Q3 FY25: $30,771 million\n", "- Q2 FY25: $26,272 million\n", "- Q1 FY25: $22,563 million\"\"\"\n", "\n", "unit_test = \"Does the response avoid unnecessary information?\"\n", "\n", "# Evaluate with LMUnit\n", "result = client.lmunit.create(\n", " query=query,\n", " response=response,\n", " unit_test=unit_test\n", ")\n", "\n", "print(f\"Unit Test: {unit_test}\")\n", "print(f\"Score: {result.score}/5\")\n", "print(f\"\\nAnalysis: The response includes additional quarterly trends beyond the specific Q4 request,\")\n", "print(f\"which explains the lower score for avoiding unnecessary information.\")" ] }, { "cell_type": "markdown", "metadata": { "id": "0VXdKZCyA4Zv" }, "source": [ "Based on this score, you could adjust your system prompt to specifically exclude any information besides the exact response needed to address the query.\n", "\n", "Let's define a comprehensive set of unit tests for evaluating quantitative reasoning responses:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "IfkbdemeA4Zv", "outputId": "9aeb4270-32f4-4e0f-9e19-4c493e75c0c5" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Unit Test Framework:\n", "==================================================\n", "1. ACCURACY: Does the response accurately extract specific numerical data from the documents?\n", "2. CAUSATION: Does the agent properly distinguish between correlation and causation?\n", "3. SYNTHESIS: Are multi-document comparisons performed correctly with accurate calculations?\n", "4. LIMITATIONS: Are potential limitations or uncertainties in the data clearly acknowledged?\n", "5. EVIDENCE: Are quantitative claims properly supported with specific evidence from the source documents?\n", "6. RELEVANCE: Does the response avoid unnecessary information?\n" ] } ], "source": [ "# Define comprehensive unit tests for quantitative reasoning\n", "unit_tests = [\n", " \"Does the response accurately extract specific numerical data from the documents?\",\n", " \"Does the agent properly distinguish between correlation and causation?\",\n", " \"Are multi-document comparisons performed correctly with accurate calculations?\",\n", " \"Are potential limitations or uncertainties in the data clearly acknowledged?\",\n", " \"Are quantitative claims properly supported with specific evidence from the source documents?\",\n", " \"Does the response avoid unnecessary information?\"\n", "]\n", "\n", "# Create category mapping for visualization\n", "test_categories = {\n", " 'Does the response accurately extract specific numerical data': 'ACCURACY',\n", " 'Does the agent properly distinguish between correlation and causation': 'CAUSATION',\n", " 'Are multi-document comparisons performed correctly': 'SYNTHESIS',\n", " 'Are potential limitations or uncertainties in the data': 'LIMITATIONS',\n", " 'Are quantitative claims properly supported with specific evidence': 'EVIDENCE',\n", " 'Does the response avoid unnecessary information': 'RELEVANCE'\n", "}\n", "\n", "print(\"Unit Test Framework:\")\n", "print(\"=\" * 50)\n", "for i, test in enumerate(unit_tests, 1):\n", " category = next((v for k, v in test_categories.items() if k.lower() in test.lower()), 'OTHER')\n", " print(f\"{i}. {category}: {test}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "L9zJrTwQA4Zv" }, "source": [ "We can also create sample prompt-response pairs for evaluation:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "0ETQ153RA4Zv", "outputId": "5fd4f466-4b4f-45b6-e302-70f8a52c52c8" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Sample Evaluation Dataset:\n", " prompt response\n", " What was NVIDIA's Data Center revenue in Q4 FY25? NVIDIA's Data Center revenue for Q4 FY25 was $35,580 million. This represents a significant increase from the previous quarter.\n", "What is the correlation coefficient between Neptune's distance from the Sun and US burglary rates? According to the Tyler Vigen spurious correlations dataset, there is a correlation coefficient of 0.87 between Neptune's distance from the Sun and US burglary rates. However, this is clearly a spurious correlation with no causal relationship.\n", " How did NVIDIA's total revenue change from Q1 FY22 to Q4 FY25? NVIDIA's total revenue grew from $5.66 billion in Q1 FY22 to $60.9 billion in Q4 FY25, representing a massive increase driven primarily by AI and data center demand.\n" ] } ], "source": [ "# Sample evaluation dataset\n", "evaluation_data = [\n", " {\n", " \"prompt\": \"What was NVIDIA's Data Center revenue in Q4 FY25?\",\n", " \"response\": \"NVIDIA's Data Center revenue for Q4 FY25 was $35,580 million. This represents a significant increase from the previous quarter.\"\n", " },\n", " {\n", " \"prompt\": \"What is the correlation coefficient between Neptune's distance from the Sun and US burglary rates?\",\n", " \"response\": \"According to the Tyler Vigen spurious correlations dataset, there is a correlation coefficient of 0.87 between Neptune's distance from the Sun and US burglary rates. However, this is clearly a spurious correlation with no causal relationship.\"\n", " },\n", " {\n", " \"prompt\": \"How did NVIDIA's total revenue change from Q1 FY22 to Q4 FY25?\",\n", " \"response\": \"NVIDIA's total revenue grew from $5.66 billion in Q1 FY22 to $60.9 billion in Q4 FY25, representing a massive increase driven primarily by AI and data center demand.\"\n", " }\n", "]\n", "\n", "eval_df = pd.DataFrame(evaluation_data)\n", "print(\"Sample Evaluation Dataset:\")\n", "print(eval_df.to_string(index=False))" ] }, { "cell_type": "markdown", "metadata": { "id": "t1VHFYoTA4Zv" }, "source": [ "\n", "Now let's run our unit tests across all evaluation examples:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "58BMFPg2A4Zv", "outputId": "e3ce5f35-79f1-4b8a-d2b5-315a39344c86" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Running comprehensive unit test evaluation...\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Processing responses: 100%|███████████████████████| 3/3 [00:28<00:00, 9.56s/it]" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "============================================================\n", "EVALUATION 1\n", "============================================================\n", "Prompt: What was NVIDIA's Data Center revenue in Q4 FY25?\n", "Response: NVIDIA's Data Center revenue for Q4 FY25 was $35,580 million. This represents a significant increase...\n", "\n", "Unit Test Scores:\n", " ACCURACY: 1.86/5\n", " CAUSATION: 1.43/5\n", " SYNTHESIS: 1.79/5\n", " LIMITATIONS: 1.16/5\n", " EVIDENCE: 1.41/5\n", " RELEVANCE: 3.75/5\n", "\n", "============================================================\n", "EVALUATION 2\n", "============================================================\n", "Prompt: What is the correlation coefficient between Neptune's distance from the Sun and US burglary rates?\n", "Response: According to the Tyler Vigen spurious correlations dataset, there is a correlation coefficient of 0....\n", "\n", "Unit Test Scores:\n", " ACCURACY: 4.20/5\n", " CAUSATION: 4.90/5\n", " SYNTHESIS: 2.75/5\n", " LIMITATIONS: 4.66/5\n", " EVIDENCE: 3.99/5\n", " RELEVANCE: 3.75/5\n", "\n", "============================================================\n", "EVALUATION 3\n", "============================================================\n", "Prompt: How did NVIDIA's total revenue change from Q1 FY22 to Q4 FY25?\n", "Response: NVIDIA's total revenue grew from $5.66 billion in Q1 FY22 to $60.9 billion in Q4 FY25, representing ...\n", "\n", "Unit Test Scores:\n", " ACCURACY: 3.24/5\n", " CAUSATION: 2.76/5\n", " SYNTHESIS: 3.18/5\n", " LIMITATIONS: 1.15/5\n", " EVIDENCE: 1.99/5\n", " RELEVANCE: 3.60/5\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\n" ] } ], "source": [ "def run_unit_tests_with_progress(\n", " df: pd.DataFrame,\n", " unit_tests: List[str]\n", ") -> List[Dict]:\n", " \"\"\"\n", " Run unit tests with progress tracking and error handling.\n", " \"\"\"\n", " results = []\n", "\n", " for idx in tqdm(range(len(df)), desc=\"Processing responses\"):\n", " row = df.iloc[idx]\n", " row_results = []\n", "\n", " for test in unit_tests:\n", " try:\n", " result = client.lmunit.create(\n", " query=row['prompt'],\n", " response=row['response'],\n", " unit_test=test\n", " )\n", "\n", " row_results.append({\n", " 'test': test,\n", " 'score': result.score,\n", " 'metadata': result.metadata if hasattr(result, 'metadata') else None\n", " })\n", "\n", " except Exception as e:\n", " print(f\"Error with prompt {idx}, test '{test}': {e}\")\n", " row_results.append({\n", " 'test': test,\n", " 'score': None,\n", " 'error': str(e)\n", " })\n", "\n", " results.append({\n", " 'prompt': row['prompt'],\n", " 'response': row['response'],\n", " 'test_results': row_results\n", " })\n", "\n", " return results\n", "\n", "# Run the evaluation\n", "print(\"Running comprehensive unit test evaluation...\")\n", "results = run_unit_tests_with_progress(eval_df, unit_tests)\n", "\n", "# Display detailed results\n", "for i, result in enumerate(results):\n", " print(f\"\\n{'='*60}\")\n", " print(f\"EVALUATION {i+1}\")\n", " print(f\"{'='*60}\")\n", " print(f\"Prompt: {result['prompt']}\")\n", " print(f\"Response: {result['response'][:100]}...\")\n", " print(\"\\nUnit Test Scores:\")\n", "\n", " for test_result in result['test_results']:\n", " if 'score' in test_result and test_result['score'] is not None:\n", " category = next((v for k, v in test_categories.items() if k.lower() in test_result['test'].lower()), 'OTHER')\n", " print(f\" {category}: {test_result['score']:.2f}/5\")\n", " else:\n", " print(f\" Error: {test_result.get('error', 'Unknown error')}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "_UZkhzbBA4Zv" }, "source": [ "\n", "Let's create polar plots to visualize the unit test results:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 258 }, "id": "RtDfKi_iA4Zv", "outputId": "51be7ae3-ee7c-4e82-d89e-302d4fa1a7b6" }, "outputs": [ { "data": { "image/png": "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2JFdAf2GbV+iP7fYHuwbjgXGb7BLwx6NttWe3ckWtF+2AeuOPgec+SxxAQtxGzt37oT73vL666+r/9PT0y0xMTGWzz77TP1fvnx5ywcffKCeX7lyxRISEmJ58MEHc60D3w8PD7fs378/+7Vt27ap1997773s15KSkvL8/po1a9TnPv/88+zXvv32W/XakiVLnNqHRo0aWW677bbs/6+++mrLwIED1Tp2796tXps3b576H9uV3/b06dPHUrNmzez/58+fr763YcMGi6t07dpVbRt47bXX1Ho2bdqk/j906JD6f9KkSbm+07p1a8tVV11lyczMzH7t999/V5/96KOPcn22WrVqlr59++Z6DZ977LHHHG7TiBEjch0HR9tx5swZS2hoqGXGjBnZr3Xo0MHSr1+/Ave7WbNmebbLGXC+sS04//mtu2TJkm69puyt4+GHH7ZER0dbUlJSHG7L5cuX1TqdOSbg8OHD6v554403cr2+Y8cOdaz1r+Pasd2H1NRUS4UKFSy33HJL9mu4LvG5WbNm5VpnVlaWpU6dOup6xnP9vtaoUcNyzTXXZL82evRotY5BgwY5tR/4LXy+U6dOloyMjOzX4+PjLSVKlMjTPpw+fdpSvHjxXK+3b9/e0rJly1yfW79+fa59Lsw+3H///bnW2b9/f0vp0qWz/9eud9vjBfA61qMxdOhQS8WKFS3nz5/P9bk77rhD7Y+968b2/hwyZEie49arV69c+/PUU0+p6+LSpUsO17V161b1Xdy/+dG0aVNLqVKlcr327LPPquOlXcv22g1HaNeh7aLfL43Jkyer9/D7HTt2zLWPjvjnn38skZGRlrvvvjvX619//bXl3nvvVf0Q2uBXXnlF3Y9lypSxHD161O66/v77b/XbrVq1siQkJDi1f4S4EzPoKa0t1Xj77bfV/+fOnbO4CvbdXlvhbHvtSp9pj3vuuccSHBxsV79p7dOTTz6ptmXFihW5+jK0mdWrV8/WYpo+gT60PfbYR7z3wgsv5Hod68Trc+bMyfW6pun0r6OtxaKBvhV9vp6LFy+qa0h/3HBebPsuR+dS60ceeOCBPH0EXl+8eHH2a+gn8Nry5cuzXzt79qwlIiLC8swzz1jyA+vBd5944gmHx93ZbXFFV2h9rO351o6D7TVse8xnzpypPjdlyhSH210UraBdQw0aNMh1bqdOnape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sC0QChBUaBogEiBey5YtK2EIHyd2wbFCpJUmtDD1vVSpUkpoYUE6CV+C+wURSWbI0w9RC4GFqDAILAgtszNmzBiZMWOG7Ny5U9UhIIS4H2opY2N2LbV9u8gbb4h8+y00R87rUVEiAwaI3HqrSIkSYmhwrLKyLivnH5asrCsSElJKwsLgAKwgISG+1VLJydvUTLmYGONrKThbExPXouqjxMTA8WdfSyFl7MCBIgkJVscy0skayamsh1qKEM9DLWVszK6lAgHapbwH7VLUUkaATj+DA0HVvn17+f3336Vr165ido4ePaoKiJpFWGkg/zsKCCMvtDdBh6sJgvPnz6u0AJogKFmypCGn2/sD+R1XiC5vRqNB6KGIOtIn+FrkuXMggHsG3RcEo9kFVmZmptrPFi1ayMcff+zrzSHEdFBLmQMzaqkNG0Ref13kp59yvx4XZ3X09e9vfW5G4GCD8w+zADMyzktwcLRy/sEJCGegN7UU6uElJCxTaT197Xx0F5hVmZi4Ds+UI9OR4++DD0S++876HLP+nntODAm1FCGehVrKXFqqceNmsmIFUpeKYAJj587WesGegnYpz0C7lGehXYr4O3T6GRhMKca06E6dOsm0adMkUIQVoigQ4WMmkKYA6RQ6d+6scpF7uqE+efKkHDlyRKUB0CJ/ED2FvNTE/RFA586dy45Ug7CqUqWKSp3habGD5h35xpHb3mxF1ANNYO3evVtat24t8+fPV2kVCCHugVrKHIwbN06+++471VZidkHHjh1lwoQJUq9evXy/984778j06dPVcUG6qFtvvVWtCwYvX2qplSutzr4//8z9OmbzoV4fUnlGR0vAYE0Deu4/J+AZDGElLKyKhIdX87gTDjoDdfBCQkpIVJS5tJQzjr9jx6ypPUGNGiL794sY1fZKLUWIZ6CWMpdd6s0398hnn10tJ0/mNPZXXSUydao1u4C7oF3KWHYp6ON58+bJnj17JCoqSqXydUVro44fHLiDBg1ySmsbBdqliD9Dp5+BGT16tMydO1d27NhhmgazoNQJaERhlDEjmCKNfOUwVHki4gaRNehokXce6RpQZPqqq67yaeqGQAPNLYQWhC3EFoQtRBZSVXgiDzhENAYkPXv2NGUaDE1ggUBIqTB27Fj58MMPZdeuXUynQIiboJYyB9dee63ccccdypgALfXtt9/K33//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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def map_test_to_category(test_question: str) -> str:\n", " \"\"\"Map the full test question to its category.\"\"\"\n", " for key, value in test_categories.items():\n", " if key.lower() in test_question.lower():\n", " return value\n", " return None\n", "\n", "def create_unit_test_plots(results: List[Dict], test_indices: Optional[List[int]] = None):\n", " \"\"\"\n", " Create polar plot(s) for unit test results.\n", " \"\"\"\n", " if test_indices is None:\n", " test_indices = list(range(len(results)))\n", " elif isinstance(test_indices, int):\n", " test_indices = [test_indices]\n", "\n", " categories = ['ACCURACY', 'CAUSATION', 'SYNTHESIS', 'LIMITATIONS', 'EVIDENCE', 'RELEVANCE']\n", " angles = np.linspace(0, 2*np.pi, len(categories), endpoint=False)\n", " angles = np.concatenate((angles, [angles[0]]))\n", "\n", " num_plots = len(test_indices)\n", " fig = plt.figure(figsize=(6 * num_plots, 6))\n", "\n", " for plot_idx, result_idx in enumerate(test_indices):\n", " result = results[result_idx]\n", " ax = plt.subplot(1, num_plots, plot_idx + 1, projection='polar')\n", "\n", " scores = []\n", " for category in categories:\n", " score = None\n", " for test_result in result['test_results']:\n", " mapped_category = map_test_to_category(test_result['test'])\n", " if mapped_category == category:\n", " score = test_result['score']\n", " break\n", " scores.append(score if score is not None else 0)\n", "\n", " scores = np.concatenate((scores, [scores[0]]))\n", "\n", " ax.plot(angles, scores, 'o-', linewidth=2, color='blue')\n", " ax.fill(angles, scores, alpha=0.25, color='blue')\n", " ax.set_xticks(angles[:-1])\n", " ax.set_xticklabels(categories)\n", " ax.set_ylim(0, 5)\n", " ax.grid(True)\n", "\n", " for angle, score, category in zip(angles[:-1], scores[:-1], categories):\n", " ax.text(angle, score + 0.2, f'{score:.1f}', ha='center', va='bottom')\n", "\n", " prompt = result['prompt'][:50] + \"...\" if len(result['prompt']) > 50 else result['prompt']\n", " ax.set_title(f\"Evaluation {result_idx + 1}\\n{prompt}\", pad=20)\n", "\n", " plt.tight_layout()\n", " return fig\n", "\n", "# Create visualizations\n", "if len(results) > 0:\n", " fig = create_unit_test_plots(results)\n", " plt.show()\n", "else:\n", " print(\"No results to visualize\")" ] }, { "cell_type": "markdown", "metadata": { "id": "jrgsrwGmA4Zv" }, "source": [ "\n", "Let's analyze the overall performance across all categories:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "M6BRhJCOA4Zv", "outputId": "bd0b6ade-475a-4aeb-acc9-79b0e42c5d9f" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Aggregate Performance by Category:\n", "==================================================\n", " mean std count\n", "category \n", "ACCURACY 3.10 1.18 3\n", "CAUSATION 3.03 1.75 3\n", "EVIDENCE 2.46 1.35 3\n", "LIMITATIONS 2.32 2.02 3\n", "RELEVANCE 3.70 0.09 3\n", "SYNTHESIS 2.57 0.71 3\n", "\n", "Overall Statistics:\n", "Mean Score: 2.87/5\n", "Standard Deviation: 1.23\n", "Total Evaluations: 18\n" ] } ], "source": [ "# Create aggregate analysis\n", "all_scores = []\n", "for result in results:\n", " for test_result in result['test_results']:\n", " if 'score' in test_result and test_result['score'] is not None:\n", " category = map_test_to_category(test_result['test'])\n", " all_scores.append({\n", " 'category': category,\n", " 'score': test_result['score'],\n", " 'test': test_result['test']\n", " })\n", "\n", "scores_df = pd.DataFrame(all_scores)\n", "\n", "if not scores_df.empty:\n", " # Calculate average scores by category\n", " avg_scores = scores_df.groupby('category')['score'].agg(['mean', 'std', 'count']).round(2)\n", "\n", " print(\"\\nAggregate Performance by Category:\")\n", " print(\"=\" * 50)\n", " print(avg_scores)\n", "\n", " # Overall statistics\n", " print(f\"\\nOverall Statistics:\")\n", " print(f\"Mean Score: {scores_df['score'].mean():.2f}/5\")\n", " print(f\"Standard Deviation: {scores_df['score'].std():.2f}\")\n", " print(f\"Total Evaluations: {len(scores_df)}\")\n", "else:\n", " print(\"No valid scores to analyze\")" ] }, { "cell_type": "markdown", "metadata": { "id": "nkPk03yjGwuE" }, "source": [ "Interestingly, several of our unit tests are tricky to all score high on: if a response ranks high on CAUSATION (Does the agent properly distinguish between correlation and causation) and LIMITATIONS (Are potential limitations or uncertainties in the data clearly acknowledged?), it may be difficul to also score high on RELEVANCE (Does the response avoid unnecessary information?)\n", "\n", "You can try all of the analyses above with your own system by generating the responses, and testing those query-response pairs.\n", "\n", "For more example code for Contextual AI's LMUnit, see our [LMUnit examples notebook](https://github.com/ContextualAI/examples/tree/main/03-standalone-api/01-lmunit?utm_campaign=rag-techniques&utm_source=diamantai&utm_medium=github&utm_content=notebook)" ] }, { "cell_type": "markdown", "metadata": { "id": "Q-grMagbKI_Z" }, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--agentic-rag)\n" ] } ], "metadata": { "colab": { "provenance": [] }, "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.7" } }, "nbformat": 4, "nbformat_minor": 0 } ================================================ FILE: all_rag_techniques/HyDe_Hypothetical_Document_Embedding.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Hypothetical Document Embedding (HyDE) in Document Retrieval\n", "\n", "## Overview\n", "\n", "This code implements a Hypothetical Document Embedding (HyDE) system for document retrieval. HyDE is an innovative approach that transforms query questions into hypothetical documents containing the answer, aiming to bridge the gap between query and document distributions in vector space.\n", "\n", "## Motivation\n", "\n", "Traditional retrieval methods often struggle with the semantic gap between short queries and longer, more detailed documents. HyDE addresses this by expanding the query into a full hypothetical document, potentially improving retrieval relevance by making the query representation more similar to the document representations in the vector space.\n", "\n", "## Key Components\n", "\n", "1. PDF processing and text chunking\n", "2. Vector store creation using FAISS and OpenAI embeddings\n", "3. Language model for generating hypothetical documents\n", "4. Custom HyDERetriever class implementing the HyDE technique\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing and Vector Store Creation\n", "\n", "1. The PDF is processed and split into chunks.\n", "2. A FAISS vector store is created using OpenAI embeddings for efficient similarity search.\n", "\n", "### Hypothetical Document Generation\n", "\n", "1. A language model (GPT-4) is used to generate a hypothetical document that answers the given query.\n", "2. The generation is guided by a prompt template that ensures the hypothetical document is detailed and matches the chunk size used in the vector store.\n", "\n", "### Retrieval Process\n", "\n", "The `HyDERetriever` class implements the following steps:\n", "\n", "1. Generate a hypothetical document from the query using the language model.\n", "2. Use the hypothetical document as the search query in the vector store.\n", "3. Retrieve the most similar documents to this hypothetical document.\n", "\n", "## Key Features\n", "\n", "1. Query Expansion: Transforms short queries into detailed hypothetical documents.\n", "2. Flexible Configuration: Allows adjustment of chunk size, overlap, and number of retrieved documents.\n", "3. Integration with OpenAI Models: Uses GPT-4 for hypothetical document generation and OpenAI embeddings for vector representation.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Improved Relevance: By expanding queries into full documents, HyDE can potentially capture more nuanced and relevant matches.\n", "2. Handling Complex Queries: Particularly useful for complex or multi-faceted queries that might be difficult to match directly.\n", "3. Adaptability: The hypothetical document generation can adapt to different types of queries and document domains.\n", "4. Potential for Better Context Understanding: The expanded query might better capture the context and intent behind the original question.\n", "\n", "## Implementation Details\n", "\n", "1. Uses OpenAI's ChatGPT model for hypothetical document generation.\n", "2. Employs FAISS for efficient similarity search in the vector space.\n", "3. Allows for easy visualization of both the hypothetical document and retrieved results.\n", "\n", "## Conclusion\n", "\n", "Hypothetical Document Embedding (HyDE) represents an innovative approach to document retrieval, addressing the semantic gap between queries and documents. By leveraging advanced language models to expand queries into hypothetical documents, HyDE has the potential to significantly improve retrieval relevance, especially for complex or nuanced queries. This technique could be particularly valuable in domains where understanding query intent and context is crucial, such as legal research, academic literature review, or advanced information retrieval systems." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"HyDe\"\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"HyDe\"\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define document(s) path" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the HyDe retriever class - creating vector store, generating hypothetical document, and retrieving" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "class HyDERetriever:\n", " def __init__(self, files_path, chunk_size=500, chunk_overlap=100):\n", " self.llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o-mini\", max_tokens=4000)\n", "\n", " self.embeddings = OpenAIEmbeddings()\n", " self.chunk_size = chunk_size\n", " self.chunk_overlap = chunk_overlap\n", " self.vectorstore = encode_pdf(files_path, chunk_size=self.chunk_size, chunk_overlap=self.chunk_overlap)\n", " \n", " \n", " self.hyde_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"chunk_size\"],\n", " template=\"\"\"Given the question '{query}', generate a hypothetical document that directly answers this question. The document should be detailed and in-depth.\n", " the document size has be exactly {chunk_size} characters.\"\"\",\n", " )\n", " self.hyde_chain = self.hyde_prompt | self.llm\n", "\n", " def generate_hypothetical_document(self, query):\n", " input_variables = {\"query\": query, \"chunk_size\": self.chunk_size}\n", " return self.hyde_chain.invoke(input_variables).content\n", "\n", " def retrieve(self, query, k=3):\n", " hypothetical_doc = self.generate_hypothetical_document(query)\n", " similar_docs = self.vectorstore.similarity_search(hypothetical_doc, k=k)\n", " return similar_docs, hypothetical_doc\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a HyDe retriever instance" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "retriever = HyDERetriever(path)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Demonstrate on a use case" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "test_query = \"What is the main cause of climate change?\"\n", "results, hypothetical_doc = retriever.retrieve(test_query)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Plot the hypothetical document and the retrieved documnets " ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "docs_content = [doc.page_content for doc in results]\n", "\n", "print(\"hypothetical_doc:\\n\")\n", "print(text_wrap(hypothetical_doc)+\"\\n\")\n", "show_context(docs_content)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--hyde-hypothetical-document-embedding)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/HyPE_Hypothetical_Prompt_Embeddings.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Hypothetical Prompt Embeddings (HyPE)\n", "\n", "## Overview\n", "\n", "This code implements a Retrieval-Augmented Generation (RAG) system enhanced by Hypothetical Prompt Embeddings (HyPE). Unlike traditional RAG pipelines that struggle with query-document style mismatch, HyPE precomputes hypothetical questions during the indexing phase. This transforms retrieval into a question-question matching problem, eliminating the need for expensive runtime query expansion techniques.\n", "\n", "## Key Components of notebook\n", "\n", "1. PDF processing and text extraction\n", "2. Text chunking to maintain coherent information units\n", "3. **Hypothetical Prompt Embedding Generation** using an LLM to create multiple proxy questions per chunk\n", "4. Vector store creation using [FAISS](https://engineering.fb.com/2017/03/29/data-infrastructure/faiss-a-library-for-efficient-similarity-search/) and OpenAI embeddings\n", "5. Retriever setup for querying the processed documents\n", "6. Evaluation of the RAG system\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing\n", "\n", "1. The PDF is loaded using `PyPDFLoader`.\n", "2. The text is split into chunks using `RecursiveCharacterTextSplitter` with specified chunk size and overlap.\n", "\n", "### Hypothetical Question Generation\n", "\n", "Instead of embedding raw text chunks, HyPE **generates multiple hypothetical prompts** for each chunk. These **precomputed questions** simulate user queries, improving alignment with real-world searches. This removes the need for runtime synthetic answer generation needed in techniques like HyDE.\n", "\n", "### Vector Store Creation\n", "\n", "1. Each hypothetical question is embedded using OpenAI embeddings.\n", "2. A FAISS vector store is built, associating **each question embedding with its original chunk**.\n", "3. This approach **stores multiple representations per chunk**, increasing retrieval flexibility.\n", "\n", "### Retriever Setup\n", "\n", "1. The retriever is optimized for **question-question matching** rather than direct document retrieval.\n", "2. The FAISS index enables **efficient nearest-neighbor** search over the hypothetical prompt embeddings.\n", "3. Retrieved chunks provide a **richer and more precise context** for downstream LLM generation.\n", "\n", "## Key Features\n", "\n", "1. **Precomputed Hypothetical Prompts** – Improves query alignment without runtime overhead.\n", "2. **Multi-Vector Representation**– Each chunk is indexed multiple times for broader semantic coverage.\n", "3. **Efficient Retrieval** – FAISS ensures fast similarity search over the enhanced embeddings.\n", "4. **Modular Design** – The pipeline is easy to adapt for different datasets and retrieval settings. Additionally it's compatible with most optimizations like reranking etc.\n", "\n", "## Evaluation\n", "\n", "HyPE's effectiveness is evaluated across multiple datasets, showing:\n", "\n", "- Up to 42 percentage points improvement in retrieval precision\n", "- Up to 45 percentage points improvement in claim recall\n", " (See full evaluation results in [preprint](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=5139335))\n", "\n", "## Benefits of this Approach\n", "\n", "1. **Eliminates Query-Time Overhead** – All hypothetical generation is done offline at indexing.\n", "2. **Enhanced Retrieval Precision** – Better alignment between queries and stored content.\n", "3. **Scalable & Efficient** – No addinal per-query computational cost; retrieval is as fast as standard RAG.\n", "4. **Flexible & Extensible** – Can be combined with advanced RAG techniques like reranking.\n", "\n", "## Conclusion\n", "\n", "HyPE provides a scalable and efficient alternative to traditional RAG systems, overcoming query-document style mismatch while avoiding the computational cost of runtime query expansion. By moving hypothetical prompt generation to indexing, it significantly enhances retrieval precision and efficiency, making it a practical solution for real-world applications.\n", "\n", "For further details, refer to the full paper: [preprint](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=5139335)\n", "\n", "\n", "
\n", "\n", "\"HyPE\"\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu futures langchain-community python-dotenv tqdm" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "import faiss\n", "from tqdm import tqdm\n", "from dotenv import load_dotenv\n", "from concurrent.futures import ThreadPoolExecutor, as_completed\n", "from langchain_community.docstore.in_memory import InMemoryDocstore\n", "\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable (comment out if not using OpenAI)\n", "if not os.getenv('OPENAI_API_KEY'):\n", " os.environ[\"OPENAI_API_KEY\"] = input(\"Please enter your OpenAI API key: \")\n", "else:\n", " os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define constants\n", "\n", "- `PATH`: path to the data, to be embedded into the RAG pipeline\n", "\n", "This tutorial uses OpenAI endpoint ([avalible models](https://platform.openai.com/docs/pricing)). \n", "- `LANGUAGE_MODEL_NAME`: The name of the language model to be used. \n", "- `EMBEDDING_MODEL_NAME`: The name of the embedding model to be used.\n", "\n", "The tutroial uses a `RecursiveCharacterTextSplitter` chunking approach where the chunking length function used is python `len` function. The chunking varables to be tweaked here are:\n", "- `CHUNK_SIZE`: The minimum length of one chunk\n", "- `CHUNK_OVERLAP`: The overlap of two consecutive chunks." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [], "source": [ "PATH = \"data/Understanding_Climate_Change.pdf\"\n", "LANGUAGE_MODEL_NAME = \"gpt-4o-mini\"\n", "EMBEDDING_MODEL_NAME = \"text-embedding-3-small\"\n", "CHUNK_SIZE = 1000\n", "CHUNK_OVERLAP = 200" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define generation of Hypothetical Prompt Embeddings\n", "\n", "The code block below generates hypothetical questions for each text chunk and embeds them for retrieval.\n", "\n", "- An LLM extracts key questions from the input chunk.\n", "- These questions are embedded using OpenAI's model.\n", "- The function returns the original chunk and its prompt embeddings later used for retrieval.\n", "\n", "To ensure clean output, extra newlines are removed, and regex parsing can improve list formatting when needed." ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [], "source": [ "def generate_hypothetical_prompt_embeddings(chunk_text: str):\n", " \"\"\"\n", " Uses the LLM to generate multiple hypothetical questions for a single chunk.\n", " These questions will be used as 'proxies' for the chunk during retrieval.\n", "\n", " Parameters:\n", " chunk_text (str): Text contents of the chunk\n", "\n", " Returns:\n", " chunk_text (str): Text contents of the chunk. This is done to make the \n", " multithreading easier\n", " hypothetical prompt embeddings (List[float]): A list of embedding vectors\n", " generated from the questions\n", " \"\"\"\n", " llm = ChatOpenAI(temperature=0, model_name=LANGUAGE_MODEL_NAME)\n", " embedding_model = OpenAIEmbeddings(model=EMBEDDING_MODEL_NAME)\n", "\n", " question_gen_prompt = PromptTemplate.from_template(\n", " \"Analyze the input text and generate essential questions that, when answered, \\\n", " capture the main points of the text. Each question should be one line, \\\n", " without numbering or prefixes.\\n\\n \\\n", " Text:\\n{chunk_text}\\n\\nQuestions:\\n\"\n", " )\n", " question_chain = question_gen_prompt | llm | StrOutputParser()\n", "\n", " # parse questions from response\n", " # Notes: \n", " # - gpt4o likes to split questions by \\n\\n so we remove one \\n\n", " # - for production or if using smaller models from ollama, it's beneficial to use regex to parse \n", " # things like (un)ordeed lists\n", " # r\"^\\s*[\\-\\*\\•]|\\s*\\d+\\.\\s*|\\s*[a-zA-Z]\\)\\s*|\\s*\\(\\d+\\)\\s*|\\s*\\([a-zA-Z]\\)\\s*|\\s*\\([ivxlcdm]+\\)\\s*\"\n", " questions = question_chain.invoke({\"chunk_text\": chunk_text}).replace(\"\\n\\n\", \"\\n\").split(\"\\n\")\n", " \n", " return chunk_text, embedding_model.embed_documents(questions)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define creation and population of FAISS Vector Store\n", "\n", "The code block below builds a FAISS vector store by embedding text chunks in parallel.\n", "\n", "What happens?\n", "- Parallel processing – Uses threading to generate embeddings faster.\n", "- FAISS initialization – Sets up an L2 index for efficient similarity search.\n", "- Chunk embedding – Each chunk is stored multiple times, once for each generated question embedding.\n", "- In-memory storage – Uses InMemoryDocstore for fast lookup.\n", "\n", "This ensures efficient retrieval, improving query alignment with precomputed question embeddings." ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [], "source": [ "def prepare_vector_store(chunks: List[str]):\n", " \"\"\"\n", " Creates and populates a FAISS vector store from a list of text chunks.\n", "\n", " This function processes a list of text chunks in parallel, generating \n", " hypothetical prompt embeddings for each chunk.\n", " The embeddings are stored in a FAISS index for efficient similarity search.\n", "\n", " Parameters:\n", " chunks (List[str]): A list of text chunks to be embedded and stored.\n", "\n", " Returns:\n", " FAISS: A FAISS vector store containing the embedded text chunks.\n", " \"\"\"\n", "\n", " # Wait with initialization to see vector lengths\n", " vector_store = None \n", "\n", " with ThreadPoolExecutor() as pool: \n", " # Use threading to speed up generation of prompt embeddings\n", " futures = [pool.submit(generate_hypothetical_prompt_embeddings, c) for c in chunks]\n", " \n", " # Process embeddings as they complete\n", " for f in tqdm(as_completed(futures), total=len(chunks)): \n", " \n", " chunk, vectors = f.result() # Retrieve the processed chunk and its embeddings\n", " \n", " # Initialize the FAISS vector store on the first chunk\n", " if vector_store == None: \n", " vector_store = FAISS(\n", " embedding_function=OpenAIEmbeddings(model=EMBEDDING_MODEL_NAME), # Define embedding model\n", " index=faiss.IndexFlatL2(len(vectors[0])) # Define an L2 index for similarity search\n", " docstore=InMemoryDocstore(), # Use in-memory document storage\n", " index_to_docstore_id={} # Maintain index-to-document mapping\n", " )\n", " \n", " # Pair the chunk's content with each generated embedding vector.\n", " # Each chunk is inserted multiple times, once for each prompt vector\n", " chunks_with_embedding_vectors = [(chunk.page_content, vec) for vec in vectors]\n", " \n", " # Add embeddings to the store\n", " vector_store.add_embeddings(chunks_with_embedding_vectors) \n", "\n", " return vector_store # Return the populated vector store\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Encode PDF into a FAISS Vector Store\n", "\n", "The code block below processes a PDF file and stores its content as embeddings for retrieval.\n", "\n", "What happens?\n", "- PDF loading – Extracts text from the document.\n", "- Chunking – Splits text into overlapping segments for better context retention.\n", "- Preprocessing – Cleans text to improve embedding quality.\n", "- Vector store creation – Generates embeddings and stores them in FAISS for retrieval." ] }, { "cell_type": "code", "execution_count": 70, "metadata": {}, "outputs": [], "source": [ "def encode_pdf(path, chunk_size=1000, chunk_overlap=200):\n", " \"\"\"\n", " Encodes a PDF book into a vector store using OpenAI embeddings.\n", "\n", " Args:\n", " path: The path to the PDF file.\n", " chunk_size: The desired size of each text chunk.\n", " chunk_overlap: The amount of overlap between consecutive chunks.\n", "\n", " Returns:\n", " A FAISS vector store containing the encoded book content.\n", " \"\"\"\n", "\n", " # Load PDF documents\n", " loader = PyPDFLoader(path)\n", " documents = loader.load()\n", "\n", " # Split documents into chunks\n", " text_splitter = RecursiveCharacterTextSplitter(\n", " chunk_size=chunk_size, chunk_overlap=chunk_overlap, length_function=len\n", " )\n", " texts = text_splitter.split_documents(documents)\n", " cleaned_texts = replace_t_with_space(texts)\n", "\n", " vectorstore = prepare_vector_store(cleaned_texts)\n", "\n", " return vectorstore" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create HyPE vector store\n", "\n", "Now we process the PDF and store its embeddings.\n", "This step initializes the FAISS vector store with the encoded document." ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "100%|██████████| 97/97 [00:22<00:00, 4.40it/s]\n" ] } ], "source": [ "# Chunk size can be quite large with HyPE as we are not loosing percision with more\n", "# information. For production, test how exhaustive your model is in generating sufficient \n", "# amount of questions per chunk. This will mostly depend on your information density.\n", "chunks_vector_store = encode_pdf(PATH, chunk_size=CHUNK_SIZE, chunk_overlap=CHUNK_OVERLAP)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create retriever\n", "\n", "Now we set up the retriever to fetch relevant chunks from the vector store.\n", "\n", "Retrieves the top `k=3` most relevant chunks based on query similarity." ] }, { "cell_type": "code", "execution_count": 79, "metadata": {}, "outputs": [], "source": [ "chunks_query_retriever = chunks_vector_store.as_retriever(search_kwargs={\"k\": 3})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Test retriever\n", "\n", "Now we test retrieval using a sample query.\n", "\n", "- Queries the vector store to find the most relevant chunks.\n", "- Deduplicates results to remove potentially repeated chunks.\n", "- Displays the retrieved context for inspection.\n", "\n", "This step verifies that the retriever returns meaningful and diverse information for the given question." ] }, { "cell_type": "code", "execution_count": 80, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Context 1:\n", "Most of these climate changes are attributed to very small variations in Earth's orbit that \n", "change the amount of solar energy our planet receives. During the Holocene epoch, which \n", "began at the end of the last ice age, human societies f lourished, but the industrial era has seen \n", "unprecedented changes. \n", "Modern Observations \n", "Modern scientific observations indicate a rapid increase in global temperatures, sea levels, \n", "and extreme weather events. The Intergovernmental Panel on Climate Change (IPCC) has \n", "documented these changes extensively. Ice core samples, tree rings, and ocean sediments \n", "provide a historical record that scientists use to understand past climate conditions and \n", "predict future trends. The evidence overwhelmingly shows that recent changes are primarily \n", "driven by human activities, particularly the emission of greenhou se gases. \n", "Chapter 2: Causes of Climate Change \n", "Greenhouse Gases\n", "\n", "\n", "Context 2:\n", "driven by human activities, particularly the emission of greenhou se gases. \n", "Chapter 2: Causes of Climate Change \n", "Greenhouse Gases \n", "The primary cause of recent climate change is the increase in greenhouse gases in the \n", "atmosphere. Greenhouse gases, such as carbon dioxide (CO2), methane (CH4), and nitrous \n", "oxide (N2O), trap heat from the sun, creating a \"greenhouse effect.\" This effect is essential \n", "for life on Earth, as it keeps the planet warm enough to support life. However, human \n", "activities have intensified this natural process, leading to a warmer climate. \n", "Fossil Fuels \n", "Burning fossil fuels for energy releases large amounts of CO2. This includes coal, oil, and \n", "natural gas used for electricity, heating, and transportation. The industrial revolution marked \n", "the beginning of a significant increase in fossil fuel consumption, which continues to rise \n", "today. \n", "Coal\n", "\n", "\n", "Context 3:\n", "Understanding Climate Change \n", "Chapter 1: Introduction to Climate Change \n", "Climate change refers to significant, long -term changes in the global climate. The term \n", "\"global climate\" encompasses the planet's overall weather patterns, including temperature, \n", "precipitation, and wind patterns, over an extended period. Over the past cent ury, human \n", "activities, particularly the burning of fossil fuels and deforestation, have significantly \n", "contributed to climate change. \n", "Historical Context \n", "The Earth's climate has changed throughout history. Over the past 650,000 years, there have \n", "been seven cycles of glacial advance and retreat, with the abrupt end of the last ice age about \n", "11,700 years ago marking the beginning of the modern climate era and human civilization. \n", "Most of these climate changes are attributed to very small variations in Earth's orbit that \n", "change the amount of solar energy our planet receives. During the Holocene epoch, which\n", "\n", "\n" ] } ], "source": [ "test_query = \"What is the main cause of climate change?\"\n", "context = retrieve_context_per_question(test_query, chunks_query_retriever)\n", "context = list(set(context))\n", "show_context(context)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Evaluate results" ] }, { "cell_type": "code", "execution_count": 76, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'questions': ['1. **Multiple Choice: Causes of Climate Change**',\n", " ' - What is the primary cause of the current climate change trend?',\n", " ' A) Solar radiation variations',\n", " ' B) Natural cycles of the Earth',\n", " ' C) Human activities, such as burning fossil fuels',\n", " ' D) Volcanic eruptions',\n", " '',\n", " '2. **True or False: Impact on Biodiversity**',\n", " ' - True or False: Climate change does not have any significant impact on the migration patterns and extinction rates of various species.',\n", " '',\n", " '3. **Short Answer: Mitigation Strategies**',\n", " ' - What are two effective strategies that can be implemented at a community level to mitigate the effects of climate change?',\n", " '',\n", " '4. **Matching: Climate Change Effects**',\n", " ' - Match the following effects of climate change (numbered) with their likely consequences (lettered).',\n", " ' 1. Rising sea levels',\n", " ' 2. Increased frequency of extreme weather events',\n", " ' 3. Melting polar ice caps',\n", " ' 4. Ocean acidification',\n", " ' ',\n", " ' A) Displacement of coastal communities',\n", " ' B) Loss of marine biodiversity',\n", " ' C) Increased global temperatures',\n", " ' D) More frequent and severe hurricanes and floods',\n", " '',\n", " '5. **Essay: International Cooperation**',\n", " ' - Discuss the importance of international cooperation in combating climate change. Include examples of successful global agreements or initiatives and explain how they have contributed to addressing climate change.'],\n", " 'results': ['```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 2,\\n \"Completeness\": 1,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 1,\\n \"Completeness\": 1,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 1,\\n \"Completeness\": 1,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 2,\\n \"Completeness\": 1,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 2,\\n \"Completeness\": 1,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 2,\\n \"Completeness\": 1,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 2,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 2,\\n \"Completeness\": 1,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 2,\\n \"Conciseness\": 3\\n}\\n```'],\n", " 'average_scores': None}" ] }, "execution_count": 76, "metadata": {}, "output_type": "execute_result" } ], "source": [ "evaluate_rag(chunks_query_retriever)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--hype-hypothetical-prompt-embeddings)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.12" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/Microsoft_GraphRag.ipynb ================================================ { "cells": [ { "cell_type": "raw", "metadata": { "vscode": { "languageId": "raw" } }, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--microsoft-graphrag)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Microsoft GraphRAG: Enhancing Retrieval-Augmented Generation with Knowledge Graphs\n", "\n", " \n", "## Overview\n", "\n", " \n", "Microsoft GraphRAG is an advanced Retrieval-Augmented Generation (RAG) system that integrates knowledge graphs to improve the performance of large language models (LLMs). Developed by Microsoft Research, GraphRAG addresses limitations in traditional RAG approaches by using LLM-generated knowledge graphs to enhance document analysis and improve response quality.\n", "\n", "## Motivation\n", "\n", " \n", "Traditional RAG systems often struggle with complex queries that require synthesizing information from disparate sources. GraphRAG aims to:\n", "Connect related information across datasets.\n", "Enhance understanding of semantic concepts.\n", "Improve performance on global sensemaking tasks.\n", "\n", "## Key Components\n", "\n", "Knowledge Graph Generation: Constructs graphs with entities as nodes and relationships as edges.\n", "Community Detection: Identifies clusters of related entities within the graph.\n", "Summarization: Generates summaries for each community to provide context for LLMs.\n", "Query Processing: Uses these summaries to enhance the LLM's ability to answer complex questions.\n", "## Method Details\n", "\n", "Indexing Stage\n", "\n", " \n", "Text Chunking: Splits source texts into manageable chunks.\n", "Element Extraction: Uses LLMs to identify entities and relationships.\n", "Graph Construction: Builds a graph from the extracted elements.\n", "Community Detection: Applies algorithms like Leiden to find communities.\n", "Community Summarization: Creates summaries for each community.\n", "\n", "Query Stage\n", "\n", " \n", "Local Answer Generation: Uses community summaries to generate preliminary answers.\n", "Global Answer Synthesis: Combines local answers to form a comprehensive response.\n", "\n", "\n", "## Benefits of GraphRAG\n", "GraphRAG is a powerful tool that addresses some of the key limitations of the baseline RAG model. Unlike the standard RAG model, GraphRAG excels at identifying connections between disparate pieces of information and drawing insights from them. This makes it an ideal choice for users who need to extract insights from large data collections or documents that are difficult to summarize. By leveraging its advanced graph-based architecture, GraphRAG is able to provide a holistic understanding of complex semantic concepts, making it an invaluable tool for anyone who needs to find information quickly and accurately. Whether you're a researcher, analyst, or just someone who needs to stay informed, GraphRAG can help you connect the dots and uncover new insights.\n", "\n", "## Conclusion\n", "\n", "Microsoft GraphRAG represents a significant step forward in retrieval-augmented generation, particularly for tasks requiring a global understanding of datasets. By incorporating knowledge graphs, it offers improved performance, making it ideal for complex information retrieval and analysis.\n", "\n", "For those experienced with basic RAG systems, GraphRAG offers an opportunity to explore more sophisticated solutions, although it may not be necessary for all use cases.\n", "Retrieval Augmented Generation (RAG) is often performed by chunking long texts, creating a text embedding for each chunk, and retrieving chunks for including in the LLM generation context based on a similarity search against the query. This approach works well in many scenarios, and at compelling speed and cost trade-offs, but doesn't always cope well in scenarios where a detailed understanding of the text is required.\n", "\n", "GraphRag ( [microsoft.github.io/graphrag](https://microsoft.github.io/graphrag/) )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"adaptive\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To run this notebook you can use either OpenAI API key or Azure OpenAI key. \n", "Create a `.env` file and fill in the credentials for your OpenAI or Azure Open AI deployment. The following code loads these environment variables and sets up our AI client.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "AZURE_OPENAI_API_KEY=\"\"\n", "AZURE_OPENAI_ENDPOINT=\"\"\n", "GPT4O_MODEL_NAME=\"gpt-4o\"\n", "TEXT_EMBEDDING_3_LARGE_DEPLOYMENT_NAME=\"\"\n", "AZURE_OPENAI_API_VERSION=\"2024-06-01\"\n", "\n", "OPENAI_API_KEY=\"\"" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "%pip install graphrag" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install beautifulsoup4 openai python-dotenv pyyaml" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation\n", "\n", "The cell below installs all necessary packages required to run this notebook. If you're running this notebook in a new environment, execute this cell first to ensure all dependencies are installed." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install openai python-dotenv" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from dotenv import load_dotenv\n", "import os\n", "load_dotenv()\n", "from openai import AzureOpenAI, OpenAI\n", "\n", "AZURE=True #Change to False to use OpenAI\n", "if AZURE:\n", " AZURE_OPENAI_API_KEY = os.getenv(\"AZURE_OPENAI_API_KEY\")\n", " AZURE_OPENAI_ENDPOINT = os.getenv(\"AZURE_OPENAI_ENDPOINT\")\n", " GPT4O_DEPLOYMENT_NAME = os.getenv(\"GPT4O_MODEL_NAME\")\n", " TEXT_EMBEDDING_3_LARGE_NAME = os.getenv(\"TEXT_EMBEDDING_3_LARGE_DEPLOYMENT_NAME\")\n", " AZURE_OPENAI_API_VERSION = os.getenv(\"AZURE_OPENAI_API_VERSION\")\n", " oai = AzureOpenAI(azure_endpoint=AZURE_OPENAI_ENDPOINT, api_key=AZURE_OPENAI_API_KEY, api_version=AZURE_OPENAI_API_VERSION)\n", "else:\n", " OPENAI_API_KEY = os.getenv(\"OPENAI_API_KEY\")\n", " oai = OpenAI(api_key=OPENAI_API_KEY)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll start by getting a text to work with. The Wikipedia article on Elon Musk" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import requests\n", "from bs4 import BeautifulSoup\n", "\n", "url = \"https://en.wikipedia.org/wiki/Elon_Musk\" # Replace with the URL of the web page you want to scrape\n", "response = requests.get(url)\n", "soup = BeautifulSoup(response.text, \"html.parser\")\n", "\n", "if not os.path.exists('data'): \n", " os.makedirs('data')\n", "\n", "if not os.path.exists('data/elon.md'):\n", " elon = soup.text.split('\\nSee also')[0]\n", " with open('data/elon.md', 'w', encoding='utf-8') as f:\n", " f.write(elon)\n", "else:\n", " with open('data/elon.md', 'r') as f:\n", " elon = f.read()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "GraphRag has a convenient set of CLI commands we can use. We'll start by configuring the system, then run the indexing operation. Indexing with GraphRag is a much lengthier process, and one that costs significantly more, since rather than just calculating embeddings, GraphRag makes many LLM calls to analyse the text, extract entities, and construct the graph. That's a one-time expense, though." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import yaml\n", "\n", "if not os.path.exists('data/graphrag'):\n", " !python -m graphrag.index --init --root data/graphrag\n", "\n", "with open('data/graphrag/settings.yaml', 'r') as f:\n", " settings_yaml = yaml.load(f, Loader=yaml.FullLoader)\n", "settings_yaml['llm']['model'] = \"gpt-4o\"\n", "settings_yaml['llm']['api_key'] = AZURE_OPENAI_API_KEY if AZURE else OPENAI_API_KEY\n", "settings_yaml['llm']['type'] = 'azure_openai_chat' if AZURE else 'openai_chat'\n", "settings_yaml['embeddings']['llm']['api_key'] = AZURE_OPENAI_API_KEY if AZURE else OPENAI_API_KEY\n", "settings_yaml['embeddings']['llm']['type'] = 'azure_openai_embedding' if AZURE else 'openai_embedding'\n", "settings_yaml['embeddings']['llm']['model'] = TEXT_EMBEDDING_3_LARGE_NAME if AZURE else 'text-embedding-3-large'\n", "if AZURE:\n", " settings_yaml['llm']['api_version'] = AZURE_OPENAI_API_VERSION\n", " settings_yaml['llm']['deployment_name'] = GPT4O_DEPLOYMENT_NAME\n", " settings_yaml['llm']['api_base'] = AZURE_OPENAI_ENDPOINT\n", " settings_yaml['embeddings']['llm']['api_version'] = AZURE_OPENAI_API_VERSION\n", " settings_yaml['embeddings']['llm']['deployment_name'] = TEXT_EMBEDDING_3_LARGE_NAME\n", " settings_yaml['embeddings']['llm']['api_base'] = AZURE_OPENAI_ENDPOINT\n", "\n", "with open('data/graphrag/settings.yaml', 'w') as f:\n", " yaml.dump(settings_yaml, f)\n", "\n", "if not os.path.exists('data/graphrag/input'):\n", " os.makedirs('data/graphrag/input')\n", " !cp data/elon.md data/graphrag/input/elon.txt\n", " !python -m graphrag.index --root ./data/graphrag" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You should get an output:\n", "🚀 \u001bAll workflows completed successfully.\u001b" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To query GraphRag we'll use its CLI again, making sure to configure it with a context length equivalent to what we use in our embeddings search." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "import subprocess\n", "import re\n", "DEFAULT_RESPONSE_TYPE = 'Summarize and explain in 1-2 paragraphs with bullet points using at most 300 tokens'\n", "DEFAULT_MAX_CONTEXT_TOKENS = 10000\n", "\n", "def remove_data(text):\n", " return re.sub(r'\\[Data:.*?\\]', '', text).strip()\n", "\n", "\n", "def ask_graph(query,method):\n", " env = os.environ.copy() | {\n", " 'GRAPHRAG_GLOBAL_SEARCH_MAX_TOKENS': str(DEFAULT_MAX_CONTEXT_TOKENS),\n", " }\n", " command = [\n", " 'python', '-m', 'graphrag.query',\n", " '--root', './data/graphrag',\n", " '--method', method,\n", " '--response_type', DEFAULT_RESPONSE_TYPE,\n", " query,\n", " ]\n", " output = subprocess.check_output(command, universal_newlines=True, env=env, stderr=subprocess.DEVNULL)\n", " return remove_data(output.split('Search Response: ')[1])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "GrpahRag offers 2 types of search:\n", "1. Global Search for reasoning about holistic questions about the corpus by leveraging the community summaries.\n", "2. Local Search for reasoning about specific entities by fanning-out to their neighbors and associated concepts." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's check the local search:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/markdown": [ "Elon Musk has founded several companies and subsidiaries across various industries. Here's a summary:\n", "\n", "- **SpaceX**: Founded in 2002, SpaceX is a private aerospace manufacturer and space transportation company. Musk serves as the CEO and chief engineer .\n", "\n", "- **Tesla, Inc.**: Although not originally founded by Musk, he became an early investor and later the CEO and product architect, significantly shaping its direction .\n", "\n", "- **Neuralink**: Co-founded by Musk, this company focuses on developing brain-machine interfaces to enhance human-computer interaction .\n", "\n", "- **The Boring Company**: Founded by Musk, it specializes in tunnel construction and innovative transportation solutions .\n", "\n", "- **X.com/PayPal**: Musk co-founded X.com, which later became PayPal after merging with Confinity .\n", "\n", "- **Zip2**: Co-founded with his brother Kimbal, this was Musk's first venture, later acquired by Compaq .\n", "\n", "- **SolarCity**: Co-created by Musk, it was later acquired by Tesla and rebranded as Tesla Energy .\n", "\n", "- **xAI**: Founded in 2023, this company focuses on artificial intelligence research .\n", "\n", "- **OpenAI**: Co-founded by Musk, this nonprofit organization is dedicated to AI research .\n", "\n", "In total, Musk has founded or co-founded at least nine companies and subsidiaries." ], "text/plain": [ "" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from IPython.display import Markdown\n", "local_query=\"What and how many companies and subsidieries founded by Elon Musk\"\n", "local_result = ask_graph(local_query,'local')\n", "\n", "Markdown(local_result)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/markdown": [ "Elon Musk has achieved significant accomplishments across various industries, demonstrating his influence and innovation:\n", "\n", "- **Space Exploration**: Founder, CEO, and chief engineer of SpaceX, Musk has propelled the company to the forefront of space exploration and satellite deployment, establishing it as a leading spaceflight services provider .\n", "\n", "- **Automotive Industry**: As CEO of Tesla, Musk has driven the company to the forefront of electric vehicles and sustainable energy, significantly impacting the automotive industry with innovations in electric cars and energy solutions .\n", "\n", "- **Online Payments**: Co-founded X.com, which evolved into PayPal, revolutionizing online transactions and becoming a major player in the online payment industry .\n", "\n", "- **Neural Technology**: Co-founded Neuralink, focusing on advancing brain-machine interface technology to enhance the connection between the human brain and computers .\n", "\n", "- **Infrastructure**: Founded The Boring Company, specializing in tunnel construction to reduce traffic congestion through innovative underground transportation systems ." ], "text/plain": [ "" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "global_query=\"What are the major accomplishments of Elon Musk?\"\n", "global_result = ask_graph(global_query,'global')\n", "\n", "Markdown(global_result)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--microsoft-graphrag)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.9" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/adaptive_retrieval.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "\n", "\n", "# Adaptive Retrieval-Augmented Generation (RAG) System\n", "\n", "## Overview\n", "\n", "This system implements an advanced Retrieval-Augmented Generation (RAG) approach that adapts its retrieval strategy based on the type of query. By leveraging Language Models (LLMs) at various stages, it aims to provide more accurate, relevant, and context-aware responses to user queries.\n", "\n", "## Motivation\n", "\n", "Traditional RAG systems often use a one-size-fits-all approach to retrieval, which can be suboptimal for different types of queries. Our adaptive system is motivated by the understanding that different types of questions require different retrieval strategies. For example, a factual query might benefit from precise, focused retrieval, while an analytical query might require a broader, more diverse set of information.\n", "\n", "## Key Components\n", "\n", "1. **Query Classifier**: Determines the type of query (Factual, Analytical, Opinion, or Contextual).\n", "\n", "2. **Adaptive Retrieval Strategies**: Four distinct strategies tailored to different query types:\n", " - Factual Strategy\n", " - Analytical Strategy\n", " - Opinion Strategy\n", " - Contextual Strategy\n", "\n", "3. **LLM Integration**: LLMs are used throughout the process to enhance retrieval and ranking.\n", "\n", "4. **OpenAI GPT Model**: Generates the final response using the retrieved documents as context.\n", "\n", "## Method Details\n", "\n", "### 1. Query Classification\n", "\n", "The system begins by classifying the user's query into one of four categories:\n", "- Factual: Queries seeking specific, verifiable information.\n", "- Analytical: Queries requiring comprehensive analysis or explanation.\n", "- Opinion: Queries about subjective matters or seeking diverse viewpoints.\n", "- Contextual: Queries that depend on user-specific context.\n", "\n", "### 2. Adaptive Retrieval Strategies\n", "\n", "Each query type triggers a specific retrieval strategy:\n", "\n", "#### Factual Strategy\n", "- Enhances the original query using an LLM for better precision.\n", "- Retrieves documents based on the enhanced query.\n", "- Uses an LLM to rank documents by relevance.\n", "\n", "#### Analytical Strategy\n", "- Generates multiple sub-queries using an LLM to cover different aspects of the main query.\n", "- Retrieves documents for each sub-query.\n", "- Ensures diversity in the final document selection using an LLM.\n", "\n", "#### Opinion Strategy\n", "- Identifies different viewpoints on the topic using an LLM.\n", "- Retrieves documents representing each viewpoint.\n", "- Uses an LLM to select a diverse range of opinions from the retrieved documents.\n", "\n", "#### Contextual Strategy\n", "- Incorporates user-specific context into the query using an LLM.\n", "- Performs retrieval based on the contextualized query.\n", "- Ranks documents considering both relevance and user context.\n", "\n", "### 3. LLM-Enhanced Ranking\n", "\n", "After retrieval, each strategy uses an LLM to perform a final ranking of the documents. This step ensures that the most relevant and appropriate documents are selected for the next stage.\n", "\n", "### 4. Response Generation\n", "\n", "The final set of retrieved documents is passed to an OpenAI GPT model, which generates a response based on the query and the provided context.\n", "\n", "## Benefits of This Approach\n", "\n", "1. **Improved Accuracy**: By tailoring the retrieval strategy to the query type, the system can provide more accurate and relevant information.\n", "\n", "2. **Flexibility**: The system adapts to different types of queries, handling a wide range of user needs.\n", "\n", "3. **Context-Awareness**: Especially for contextual queries, the system can incorporate user-specific information for more personalized responses.\n", "\n", "4. **Diverse Perspectives**: For opinion-based queries, the system actively seeks out and presents multiple viewpoints.\n", "\n", "5. **Comprehensive Analysis**: The analytical strategy ensures a thorough exploration of complex topics.\n", "\n", "## Conclusion\n", "\n", "This adaptive RAG system represents a significant advancement over traditional RAG approaches. By dynamically adjusting its retrieval strategy and leveraging LLMs throughout the process, it aims to provide more accurate, relevant, and nuanced responses to a wide variety of user queries." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"adaptive\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu langchain langchain-openai python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from langchain.prompts import PromptTemplate\n", "from langchain.vectorstores import FAISS\n", "from langchain.embeddings import OpenAIEmbeddings\n", "from langchain.text_splitter import CharacterTextSplitter\n", "from langchain.prompts import PromptTemplate\n", "\n", "from langchain_core.retrievers import BaseRetriever\n", "from typing import Dict, Any\n", "from langchain.docstore.document import Document\n", "from langchain_openai import ChatOpenAI\n", "from langchain_core.pydantic_v1 import BaseModel, Field\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the query classifer class" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "class categories_options(BaseModel):\n", " category: str = Field(description=\"The category of the query, the options are: Factual, Analytical, Opinion, or Contextual\", example=\"Factual\")\n", "\n", "\n", "class QueryClassifier:\n", " def __init__(self):\n", " self.llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\", max_tokens=4000)\n", " self.prompt = PromptTemplate(\n", " input_variables=[\"query\"],\n", " template=\"Classify the following query into one of these categories: Factual, Analytical, Opinion, or Contextual.\\nQuery: {query}\\nCategory:\"\n", " )\n", " self.chain = self.prompt | self.llm.with_structured_output(categories_options)\n", "\n", "\n", " def classify(self, query):\n", " print(\"clasiffying query\")\n", " return self.chain.invoke(query).category" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the Base Retriever class, such that the complex ones will inherit from it" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "class BaseRetrievalStrategy:\n", " def __init__(self, texts):\n", " self.embeddings = OpenAIEmbeddings()\n", " text_splitter = CharacterTextSplitter(chunk_size=800, chunk_overlap=0)\n", " self.documents = text_splitter.create_documents(texts)\n", " self.db = FAISS.from_documents(self.documents, self.embeddings)\n", " self.llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\", max_tokens=4000)\n", "\n", "\n", " def retrieve(self, query, k=4):\n", " return self.db.similarity_search(query, k=k)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define Factual retriever strategy" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "class relevant_score(BaseModel):\n", " score: float = Field(description=\"The relevance score of the document to the query\", example=8.0)\n", "\n", "class FactualRetrievalStrategy(BaseRetrievalStrategy):\n", " def retrieve(self, query, k=4):\n", " print(\"retrieving factual\")\n", " # Use LLM to enhance the query\n", " enhanced_query_prompt = PromptTemplate(\n", " input_variables=[\"query\"],\n", " template=\"Enhance this factual query for better information retrieval: {query}\"\n", " )\n", " query_chain = enhanced_query_prompt | self.llm\n", " enhanced_query = query_chain.invoke(query).content\n", " print(f'enhande query: {enhanced_query}')\n", "\n", " # Retrieve documents using the enhanced query\n", " docs = self.db.similarity_search(enhanced_query, k=k*2)\n", "\n", " # Use LLM to rank the relevance of retrieved documents\n", " ranking_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"doc\"],\n", " template=\"On a scale of 1-10, how relevant is this document to the query: '{query}'?\\nDocument: {doc}\\nRelevance score:\"\n", " )\n", " ranking_chain = ranking_prompt | self.llm.with_structured_output(relevant_score)\n", "\n", " ranked_docs = []\n", " print(\"ranking docs\")\n", " for doc in docs:\n", " input_data = {\"query\": enhanced_query, \"doc\": doc.page_content}\n", " score = float(ranking_chain.invoke(input_data).score)\n", " ranked_docs.append((doc, score))\n", "\n", " # Sort by relevance score and return top k\n", " ranked_docs.sort(key=lambda x: x[1], reverse=True)\n", " return [doc for doc, _ in ranked_docs[:k]]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define Analytical reriever strategy" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [], "source": [ "class SelectedIndices(BaseModel):\n", " indices: List[int] = Field(description=\"Indices of selected documents\", example=[0, 1, 2, 3])\n", "\n", "class SubQueries(BaseModel):\n", " sub_queries: List[str] = Field(description=\"List of sub-queries for comprehensive analysis\", example=[\"What is the population of New York?\", \"What is the GDP of New York?\"])\n", "\n", "class AnalyticalRetrievalStrategy(BaseRetrievalStrategy):\n", " def retrieve(self, query, k=4):\n", " print(\"retrieving analytical\")\n", " # Use LLM to generate sub-queries for comprehensive analysis\n", " sub_queries_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"k\"],\n", " template=\"Generate {k} sub-questions for: {query}\"\n", " )\n", "\n", " llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\", max_tokens=4000)\n", " sub_queries_chain = sub_queries_prompt | llm.with_structured_output(SubQueries)\n", "\n", " input_data = {\"query\": query, \"k\": k}\n", " sub_queries = sub_queries_chain.invoke(input_data).sub_queries\n", " print(f'sub queries for comprehensive analysis: {sub_queries}')\n", "\n", " all_docs = []\n", " for sub_query in sub_queries:\n", " all_docs.extend(self.db.similarity_search(sub_query, k=2))\n", "\n", " # Use LLM to ensure diversity and relevance\n", " diversity_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"docs\", \"k\"],\n", " template=\"\"\"Select the most diverse and relevant set of {k} documents for the query: '{query}'\\nDocuments: {docs}\\n\n", " Return only the indices of selected documents as a list of integers.\"\"\"\n", " )\n", " diversity_chain = diversity_prompt | self.llm.with_structured_output(SelectedIndices)\n", " docs_text = \"\\n\".join([f\"{i}: {doc.page_content[:50]}...\" for i, doc in enumerate(all_docs)])\n", " input_data = {\"query\": query, \"docs\": docs_text, \"k\": k}\n", " selected_indices_result = diversity_chain.invoke(input_data).indices\n", " print(f'selected diverse and relevant documents')\n", " \n", " return [all_docs[i] for i in selected_indices_result if i < len(all_docs)]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define Opinion retriever strategy" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [], "source": [ "class OpinionRetrievalStrategy(BaseRetrievalStrategy):\n", " def retrieve(self, query, k=3):\n", " print(\"retrieving opinion\")\n", " # Use LLM to identify potential viewpoints\n", " viewpoints_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"k\"],\n", " template=\"Identify {k} distinct viewpoints or perspectives on the topic: {query}\"\n", " )\n", " viewpoints_chain = viewpoints_prompt | self.llm\n", " input_data = {\"query\": query, \"k\": k}\n", " viewpoints = viewpoints_chain.invoke(input_data).content.split('\\n')\n", " print(f'viewpoints: {viewpoints}')\n", "\n", " all_docs = []\n", " for viewpoint in viewpoints:\n", " all_docs.extend(self.db.similarity_search(f\"{query} {viewpoint}\", k=2))\n", "\n", " # Use LLM to classify and select diverse opinions\n", " opinion_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"docs\", \"k\"],\n", " template=\"Classify these documents into distinct opinions on '{query}' and select the {k} most representative and diverse viewpoints:\\nDocuments: {docs}\\nSelected indices:\"\n", " )\n", " opinion_chain = opinion_prompt | self.llm.with_structured_output(SelectedIndices)\n", " \n", " docs_text = \"\\n\".join([f\"{i}: {doc.page_content[:100]}...\" for i, doc in enumerate(all_docs)])\n", " input_data = {\"query\": query, \"docs\": docs_text, \"k\": k}\n", " selected_indices = opinion_chain.invoke(input_data).indices\n", " print(f'selected diverse and relevant documents')\n", " \n", " return [all_docs[int(i)] for i in selected_indices.split() if i.isdigit() and int(i) < len(all_docs)]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define Contextual retriever strategy" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [], "source": [ "class ContextualRetrievalStrategy(BaseRetrievalStrategy):\n", " def retrieve(self, query, k=4, user_context=None):\n", " print(\"retrieving contextual\")\n", " # Use LLM to incorporate user context into the query\n", " context_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"context\"],\n", " template=\"Given the user context: {context}\\nReformulate the query to best address the user's needs: {query}\"\n", " )\n", " context_chain = context_prompt | self.llm\n", " input_data = {\"query\": query, \"context\": user_context or \"No specific context provided\"}\n", " contextualized_query = context_chain.invoke(input_data).content\n", " print(f'contextualized query: {contextualized_query}')\n", "\n", " # Retrieve documents using the contextualized query\n", " docs = self.db.similarity_search(contextualized_query, k=k*2)\n", "\n", " # Use LLM to rank the relevance of retrieved documents considering the user context\n", " ranking_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"context\", \"doc\"],\n", " template=\"Given the query: '{query}' and user context: '{context}', rate the relevance of this document on a scale of 1-10:\\nDocument: {doc}\\nRelevance score:\"\n", " )\n", " ranking_chain = ranking_prompt | self.llm.with_structured_output(relevant_score)\n", " print(\"ranking docs\")\n", "\n", " ranked_docs = []\n", " for doc in docs:\n", " input_data = {\"query\": contextualized_query, \"context\": user_context or \"No specific context provided\", \"doc\": doc.page_content}\n", " score = float(ranking_chain.invoke(input_data).score)\n", " ranked_docs.append((doc, score))\n", "\n", "\n", " # Sort by relevance score and return top k\n", " ranked_docs.sort(key=lambda x: x[1], reverse=True)\n", "\n", " return [doc for doc, _ in ranked_docs[:k]]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the Adapive retriever class" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [], "source": [ "class AdaptiveRetriever:\n", " def __init__(self, texts: List[str]):\n", " self.classifier = QueryClassifier()\n", " self.strategies = {\n", " \"Factual\": FactualRetrievalStrategy(texts),\n", " \"Analytical\": AnalyticalRetrievalStrategy(texts),\n", " \"Opinion\": OpinionRetrievalStrategy(texts),\n", " \"Contextual\": ContextualRetrievalStrategy(texts)\n", " }\n", "\n", " def get_relevant_documents(self, query: str) -> List[Document]:\n", " category = self.classifier.classify(query)\n", " strategy = self.strategies[category]\n", " return strategy.retrieve(query)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define aditional retriever that inherits from langchain BaseRetriever " ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [], "source": [ "class PydanticAdaptiveRetriever(BaseRetriever):\n", " adaptive_retriever: AdaptiveRetriever = Field(exclude=True)\n", "\n", " class Config:\n", " arbitrary_types_allowed = True\n", "\n", " def get_relevant_documents(self, query: str) -> List[Document]:\n", " return self.adaptive_retriever.get_relevant_documents(query)\n", "\n", " async def aget_relevant_documents(self, query: str) -> List[Document]:\n", " return self.get_relevant_documents(query)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the Adaptive RAG class" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [], "source": [ "class AdaptiveRAG:\n", " def __init__(self, texts: List[str]):\n", " adaptive_retriever = AdaptiveRetriever(texts)\n", " self.retriever = PydanticAdaptiveRetriever(adaptive_retriever=adaptive_retriever)\n", " self.llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\", max_tokens=4000)\n", " \n", " # Create a custom prompt\n", " prompt_template = \"\"\"Use the following pieces of context to answer the question at the end. \n", " If you don't know the answer, just say that you don't know, don't try to make up an answer.\n", "\n", " {context}\n", "\n", " Question: {question}\n", " Answer:\"\"\"\n", " prompt = PromptTemplate(template=prompt_template, input_variables=[\"context\", \"question\"])\n", " \n", " # Create the LLM chain\n", " self.llm_chain = prompt | self.llm\n", " \n", " \n", "\n", " def answer(self, query: str) -> str:\n", " docs = self.retriever.get_relevant_documents(query)\n", " input_data = {\"context\": \"\\n\".join([doc.page_content for doc in docs]), \"question\": query}\n", " return self.llm_chain.invoke(input_data)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Demonstrate use of this model" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [], "source": [ "# Usage\n", "texts = [\n", " \"The Earth is the third planet from the Sun and the only astronomical object known to harbor life.\"\n", " ]\n", "rag_system = AdaptiveRAG(texts)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Showcase the four different types of queries" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "factual_result = rag_system.answer(\"What is the distance between the Earth and the Sun?\").content\n", "print(f\"Answer: {factual_result}\")\n", "\n", "analytical_result = rag_system.answer(\"How does the Earth's distance from the Sun affect its climate?\").content\n", "print(f\"Answer: {analytical_result}\")\n", "\n", "opinion_result = rag_system.answer(\"What are the different theories about the origin of life on Earth?\").content\n", "print(f\"Answer: {opinion_result}\")\n", "\n", "contextual_result = rag_system.answer(\"How does the Earth's position in the Solar System influence its habitability?\").content\n", "print(f\"Answer: {contextual_result}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--adaptive-retrieval)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/choose_chunk_size.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install llama-index openai python-dotenv" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "import nest_asyncio\n", "import random\n", "\n", "nest_asyncio.apply()\n", "from dotenv import load_dotenv\n", "\n", "from llama_index.core import VectorStoreIndex, SimpleDirectoryReader\n", "from llama_index.core.prompts import PromptTemplate\n", "\n", "from llama_index.core.evaluation import (\n", " DatasetGenerator,\n", " FaithfulnessEvaluator,\n", " RelevancyEvaluator\n", ")\n", "from llama_index.llms.openai import OpenAI\n", "from llama_index.core import Settings\n", "\n", "import openai\n", "import time\n", "import os\n", "load_dotenv()\n", "openai.api_key = os.getenv(\"OPENAI_API_KEY\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Read Docs" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "data_dir = \"../data\"\n", "documents = SimpleDirectoryReader(data_dir).load_data()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create evaluation questions and pick k out of them" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "num_eval_questions = 25\n", "\n", "eval_documents = documents[0:20]\n", "data_generator = DatasetGenerator.from_documents(eval_documents)\n", "eval_questions = data_generator.generate_questions_from_nodes()\n", "k_eval_questions = random.sample(eval_questions, num_eval_questions)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define metrics evaluators and modify llama_index faithfullness evaluator prompt to rely on the context " ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# We will use GPT-4 for evaluating the responses\n", "gpt4 = OpenAI(temperature=0, model=\"gpt-4o\")\n", "\n", "# Set appropriate settings for the LLM\n", "Settings.llm = gpt4\n", "\n", "# Define Faithfulness Evaluators which are based on GPT-4\n", "faithfulness_gpt4 = FaithfulnessEvaluator()\n", "\n", "faithfulness_new_prompt_template = PromptTemplate(\"\"\" Please tell if a given piece of information is directly supported by the context.\n", " You need to answer with either YES or NO.\n", " Answer YES if any part of the context explicitly supports the information, even if most of the context is unrelated. If the context does not explicitly support the information, answer NO. Some examples are provided below.\n", "\n", " Information: Apple pie is generally double-crusted.\n", " Context: An apple pie is a fruit pie in which the principal filling ingredient is apples.\n", " Apple pie is often served with whipped cream, ice cream ('apple pie à la mode'), custard, or cheddar cheese.\n", " It is generally double-crusted, with pastry both above and below the filling; the upper crust may be solid or latticed (woven of crosswise strips).\n", " Answer: YES\n", "\n", " Information: Apple pies taste bad.\n", " Context: An apple pie is a fruit pie in which the principal filling ingredient is apples.\n", " Apple pie is often served with whipped cream, ice cream ('apple pie à la mode'), custard, or cheddar cheese.\n", " It is generally double-crusted, with pastry both above and below the filling; the upper crust may be solid or latticed (woven of crosswise strips).\n", " Answer: NO\n", "\n", " Information: Paris is the capital of France.\n", " Context: This document describes a day trip in Paris. You will visit famous landmarks like the Eiffel Tower, the Louvre Museum, and Notre-Dame Cathedral.\n", " Answer: NO\n", "\n", " Information: {query_str}\n", " Context: {context_str}\n", " Answer:\n", "\n", " \"\"\")\n", "\n", "faithfulness_gpt4.update_prompts({\"your_prompt_key\": faithfulness_new_prompt_template}) # Update the prompts dictionary with the new prompt template\n", "\n", "# Define Relevancy Evaluators which are based on GPT-4\n", "relevancy_gpt4 = RelevancyEvaluator()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Function to evaluate metrics for each chunk size" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "# Define function to calculate average response time, average faithfulness and average relevancy metrics for given chunk size\n", "# We use GPT-3.5-Turbo to generate response and GPT-4 to evaluate it.\n", "def evaluate_response_time_and_accuracy(chunk_size, eval_questions):\n", " \"\"\"\n", " Evaluate the average response time, faithfulness, and relevancy of responses generated by GPT-3.5-turbo for a given chunk size.\n", " \n", " Parameters:\n", " chunk_size (int): The size of data chunks being processed.\n", " \n", " Returns:\n", " tuple: A tuple containing the average response time, faithfulness, and relevancy metrics.\n", " \"\"\"\n", "\n", " total_response_time = 0\n", " total_faithfulness = 0\n", " total_relevancy = 0\n", "\n", " # create vector index\n", " llm = OpenAI(model=\"gpt-3.5-turbo\")\n", "\n", " Settings.llm = llm\n", " Settings.chunk_size = chunk_size\n", " Settings.chunk_overlap = chunk_size // 5 \n", "\n", " vector_index = VectorStoreIndex.from_documents(eval_documents)\n", " \n", " # build query engine\n", " query_engine = vector_index.as_query_engine(similarity_top_k=5)\n", " num_questions = len(eval_questions)\n", "\n", " # Iterate over each question in eval_questions to compute metrics.\n", " # While BatchEvalRunner can be used for faster evaluations (see: https://docs.llamaindex.ai/en/latest/examples/evaluation/batch_eval.html),\n", " # we're using a loop here to specifically measure response time for different chunk sizes.\n", " for question in eval_questions:\n", " start_time = time.time()\n", " response_vector = query_engine.query(question)\n", " elapsed_time = time.time() - start_time\n", " \n", " faithfulness_result = faithfulness_gpt4.evaluate_response(\n", " response=response_vector\n", " ).passing\n", " \n", " relevancy_result = relevancy_gpt4.evaluate_response(\n", " query=question, response=response_vector\n", " ).passing\n", "\n", " total_response_time += elapsed_time\n", " total_faithfulness += faithfulness_result\n", " total_relevancy += relevancy_result\n", "\n", " average_response_time = total_response_time / num_questions\n", " average_faithfulness = total_faithfulness / num_questions\n", " average_relevancy = total_relevancy / num_questions\n", "\n", " return average_response_time, average_faithfulness, average_relevancy" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Test different chunk sizes " ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\Users\\N7\\AppData\\Local\\Temp\\ipykernel_22672\\1178342312.py:21: DeprecationWarning: Call to deprecated class method from_defaults. (ServiceContext is deprecated, please use `llama_index.settings.Settings` instead.) -- Deprecated since version 0.10.0.\n", " service_context = ServiceContext.from_defaults(llm=llm, chunk_size=chunk_size, chunk_overlap=chunk_size//5)\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Chunk size 128 - Average Response time: 1.35s, Average Faithfulness: 1.00, Average Relevancy: 1.00\n", "Chunk size 256 - Average Response time: 1.31s, Average Faithfulness: 1.00, Average Relevancy: 1.00\n" ] } ], "source": [ "chunk_sizes = [128, 256]\n", "\n", "for chunk_size in chunk_sizes:\n", " avg_response_time, avg_faithfulness, avg_relevancy = evaluate_response_time_and_accuracy(chunk_size, k_eval_questions)\n", " print(f\"Chunk size {chunk_size} - Average Response time: {avg_response_time:.2f}s, Average Faithfulness: {avg_faithfulness:.2f}, Average Relevancy: {avg_relevancy:.2f}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--choose-chunk-size)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/context_enrichment_window_around_chunk.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Context Enrichment Window for Document Retrieval\n", "\n", "## Overview\n", "\n", "This code implements a context enrichment window technique for document retrieval in a vector database. It enhances the standard retrieval process by adding surrounding context to each retrieved chunk, improving the coherence and completeness of the returned information.\n", "\n", "## Motivation\n", "\n", "Traditional vector search often returns isolated chunks of text, which may lack necessary context for full understanding. This approach aims to provide a more comprehensive view of the retrieved information by including neighboring text chunks.\n", "\n", "## Key Components\n", "\n", "1. PDF processing and text chunking\n", "2. Vector store creation using FAISS and OpenAI embeddings\n", "3. Custom retrieval function with context window\n", "4. Comparison between standard and context-enriched retrieval\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing\n", "\n", "1. The PDF is read and converted to a string.\n", "2. The text is split into chunks with overlap, each chunk tagged with its index.\n", "\n", "### Vector Store Creation\n", "\n", "1. OpenAI embeddings are used to create vector representations of the chunks.\n", "2. A FAISS vector store is created from these embeddings.\n", "\n", "### Context-Enriched Retrieval\n", "\n", "1. The `retrieve_with_context_overlap` function performs the following steps:\n", " - Retrieves relevant chunks based on the query\n", " - For each relevant chunk, fetches neighboring chunks\n", " - Concatenates the chunks, accounting for overlap\n", " - Returns the expanded context for each relevant chunk\n", "\n", "### Retrieval Comparison\n", "\n", "The notebook includes a section to compare standard retrieval with the context-enriched approach.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Provides more coherent and contextually rich results\n", "2. Maintains the advantages of vector search while mitigating its tendency to return isolated text fragments\n", "3. Allows for flexible adjustment of the context window size\n", "\n", "## Conclusion\n", "\n", "This context enrichment window technique offers a promising way to improve the quality of retrieved information in vector-based document search systems. By providing surrounding context, it helps maintain the coherence and completeness of the retrieved information, potentially leading to better understanding and more accurate responses in downstream tasks such as question answering." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"context\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"context\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "c:\\Users\\N7\\PycharmProjects\\llm_tasks\\RAG_TECHNIQUES\\.venv\\Lib\\site-packages\\deepeval\\__init__.py:45: UserWarning: You are using deepeval version 0.21.73, however version 0.21.78 is available. You should consider upgrading via the \"pip install --upgrade deepeval\" command.\n", " warnings.warn(\n" ] } ], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from langchain.docstore.document import Document\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define path to PDF" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Read PDF to string" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "content = read_pdf_to_string(path)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Function to split text into chunks with metadata of the chunk chronological index" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "def split_text_to_chunks_with_indices(text: str, chunk_size: int, chunk_overlap: int) -> List[Document]:\n", " chunks = []\n", " start = 0\n", " while start < len(text):\n", " end = start + chunk_size\n", " chunk = text[start:end]\n", " chunks.append(Document(page_content=chunk, metadata={\"index\": len(chunks), \"text\": text}))\n", " start += chunk_size - chunk_overlap\n", " return chunks" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Split our document accordingly" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "chunks_size = 400\n", "chunk_overlap = 200\n", "docs = split_text_to_chunks_with_indices(content, chunks_size, chunk_overlap)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create vector store and retriever" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "embeddings = OpenAIEmbeddings()\n", "vectorstore = FAISS.from_documents(docs, embeddings)\n", "chunks_query_retriever = vectorstore.as_retriever(search_kwargs={\"k\": 1})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Function to draw the kth chunk (in the original order) from the vector store \n" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [], "source": [ "def get_chunk_by_index(vectorstore, target_index: int) -> Document:\n", " \"\"\"\n", " Retrieve a chunk from the vectorstore based on its index in the metadata.\n", " \n", " Args:\n", " vectorstore (VectorStore): The vectorstore containing the chunks.\n", " target_index (int): The index of the chunk to retrieve.\n", " \n", " Returns:\n", " Optional[Document]: The retrieved chunk as a Document object, or None if not found.\n", " \"\"\"\n", " # This is a simplified version. In practice, you might need a more efficient method\n", " # to retrieve chunks by index, depending on your vectorstore implementation.\n", " all_docs = vectorstore.similarity_search(\"\", k=vectorstore.index.ntotal)\n", " for doc in all_docs:\n", " if doc.metadata.get('index') == target_index:\n", " return doc\n", " return None" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Check the function" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Understanding Climate Change \n", "Chapter 1: Introduction to Climate Change \n", "Climate change refers to significant, long-term changes in the global climate. The term \n", "\"global climate\" encompasses the planet's overall weather patterns, including temperature, \n", "precipitation, and wind patterns, over an extended period. Over the past century, human \n", "activities, particularly the burning of fossil fuels and \n" ] } ], "source": [ "chunk = get_chunk_by_index(vectorstore, 0)\n", "print(chunk.page_content)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Function that retrieves from the vector stroe based on semantic similarity and then pads each retrieved chunk with its num_neighbors before and after, taking into account the chunk overlap to construct a meaningful wide window arround it" ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [], "source": [ "def retrieve_with_context_overlap(vectorstore, retriever, query: str, num_neighbors: int = 1, chunk_size: int = 200, chunk_overlap: int = 20) -> List[str]:\n", " \"\"\"\n", " Retrieve chunks based on a query, then fetch neighboring chunks and concatenate them, \n", " accounting for overlap and correct indexing.\n", "\n", " Args:\n", " vectorstore (VectorStore): The vectorstore containing the chunks.\n", " retriever: The retriever object to get relevant documents.\n", " query (str): The query to search for relevant chunks.\n", " num_neighbors (int): The number of chunks to retrieve before and after each relevant chunk.\n", " chunk_size (int): The size of each chunk when originally split.\n", " chunk_overlap (int): The overlap between chunks when originally split.\n", "\n", " Returns:\n", " List[str]: List of concatenated chunk sequences, each centered on a relevant chunk.\n", " \"\"\"\n", " relevant_chunks = retriever.get_relevant_documents(query)\n", " result_sequences = []\n", "\n", " for chunk in relevant_chunks:\n", " current_index = chunk.metadata.get('index')\n", " if current_index is None:\n", " continue\n", "\n", " # Determine the range of chunks to retrieve\n", " start_index = max(0, current_index - num_neighbors)\n", " end_index = current_index + num_neighbors + 1 # +1 because range is exclusive at the end\n", "\n", " # Retrieve all chunks in the range\n", " neighbor_chunks = []\n", " for i in range(start_index, end_index):\n", " neighbor_chunk = get_chunk_by_index(vectorstore, i)\n", " if neighbor_chunk:\n", " neighbor_chunks.append(neighbor_chunk)\n", "\n", " # Sort chunks by their index to ensure correct order\n", " neighbor_chunks.sort(key=lambda x: x.metadata.get('index', 0))\n", "\n", " # Concatenate chunks, accounting for overlap\n", " concatenated_text = neighbor_chunks[0].page_content\n", " for i in range(1, len(neighbor_chunks)):\n", " current_chunk = neighbor_chunks[i].page_content\n", " overlap_start = max(0, len(concatenated_text) - chunk_overlap)\n", " concatenated_text = concatenated_text[:overlap_start] + current_chunk\n", "\n", " result_sequences.append(concatenated_text)\n", "\n", " return result_sequences" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Comparing regular retrival and retrival with context window" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Baseline approach\n", "query = \"Explain the role of deforestation and fossil fuels in climate change.\"\n", "baseline_chunk = chunks_query_retriever.get_relevant_documents(query\n", " ,\n", " k=1\n", ")\n", "# Focused context enrichment approach\n", "enriched_chunks = retrieve_with_context_overlap(\n", " vectorstore,\n", " chunks_query_retriever,\n", " query,\n", " num_neighbors=1,\n", " chunk_size=400,\n", " chunk_overlap=200\n", ")\n", "\n", "print(\"Baseline Chunk:\")\n", "print(baseline_chunk[0].page_content)\n", "print(\"\\nEnriched Chunks:\")\n", "print(enriched_chunks[0])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### An example that showcases the superiority of additional context window" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Regular retrieval:\n", "\n", "Context 1:\n", "\n", "Deep Learning, a subset of machine learning using neural networks with many layers, began to show promising results in the early 2010s. The breakthrough came in 2012 when a deep neural network significantly outperformed other machine learning method\n", "\n", "\n", "\n", "Retrieval with context overlap:\n", "\n", "Context 1:\n", "ng multi-layer networks during this time.\n", "\n", "The late 1990s and 2000s marked the rise of machine learning approaches. Support Vector Machines (SVMs) and Random Forests became popular for various classification and regression tasks.\n", "\n", "Deep Learning, a subset of machine learning using neural networks with many layers, began to show promising results in the early 2010s. The breakthrough came in 2012 when a deep neural network significantly outperformed other machine learning methods in the ImageNet competition.\n", "\n", "Since then, deep learning has revolutionized many AI applications, including image and speech recognition, natural language processing, and game playing. In 2016, Google's AlphaGo defeated a world c\n", "\n", "\n" ] } ], "source": [ "\n", "document_content = \"\"\"\n", "Artificial Intelligence (AI) has a rich history dating back to the mid-20th century. The term \"Artificial Intelligence\" was coined in 1956 at the Dartmouth Conference, marking the field's official beginning.\n", "\n", "In the 1950s and 1960s, AI research focused on symbolic methods and problem-solving. The Logic Theorist, created in 1955 by Allen Newell and Herbert A. Simon, is often considered the first AI program.\n", "\n", "The 1960s saw the development of expert systems, which used predefined rules to solve complex problems. DENDRAL, created in 1965, was one of the first expert systems, designed to analyze chemical compounds.\n", "\n", "However, the 1970s brought the first \"AI Winter,\" a period of reduced funding and interest in AI research, largely due to overpromised capabilities and underdelivered results.\n", "\n", "The 1980s saw a resurgence with the popularization of expert systems in corporations. The Japanese government's Fifth Generation Computer Project also spurred increased investment in AI research globally.\n", "\n", "Neural networks gained prominence in the 1980s and 1990s. The backpropagation algorithm, although discovered earlier, became widely used for training multi-layer networks during this time.\n", "\n", "The late 1990s and 2000s marked the rise of machine learning approaches. Support Vector Machines (SVMs) and Random Forests became popular for various classification and regression tasks.\n", "\n", "Deep Learning, a subset of machine learning using neural networks with many layers, began to show promising results in the early 2010s. The breakthrough came in 2012 when a deep neural network significantly outperformed other machine learning methods in the ImageNet competition.\n", "\n", "Since then, deep learning has revolutionized many AI applications, including image and speech recognition, natural language processing, and game playing. In 2016, Google's AlphaGo defeated a world champion Go player, a landmark achievement in AI.\n", "\n", "The current era of AI is characterized by the integration of deep learning with other AI techniques, the development of more efficient and powerful hardware, and the ethical considerations surrounding AI deployment.\n", "\n", "Transformers, introduced in 2017, have become a dominant architecture in natural language processing, enabling models like GPT (Generative Pre-trained Transformer) to generate human-like text.\n", "\n", "As AI continues to evolve, new challenges and opportunities arise. Explainable AI, robust and fair machine learning, and artificial general intelligence (AGI) are among the key areas of current and future research in the field.\n", "\"\"\"\n", "\n", "chunks_size = 250\n", "chunk_overlap = 20\n", "document_chunks = split_text_to_chunks_with_indices(document_content, chunks_size, chunk_overlap)\n", "document_vectorstore = FAISS.from_documents(document_chunks, embeddings)\n", "document_retriever = document_vectorstore.as_retriever(search_kwargs={\"k\": 1})\n", "\n", "query = \"When did deep learning become prominent in AI?\"\n", "context = document_retriever.get_relevant_documents(query)\n", "context_pages_content = [doc.page_content for doc in context]\n", "\n", "print(\"Regular retrieval:\\n\")\n", "show_context(context_pages_content)\n", "\n", "sequences = retrieve_with_context_overlap(document_vectorstore, document_retriever, query, num_neighbors=1)\n", "print(\"\\nRetrieval with context enrichment:\\n\")\n", "show_context(sequences)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--context-enrichment-window-around-chunk)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/context_enrichment_window_around_chunk_with_llamaindex.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Context Enrichment Window for Document Retrieval\n", "\n", "## Overview\n", "\n", "This code implements a context enrichment window technique for document retrieval in a vector database. It enhances the standard retrieval process by adding surrounding context to each retrieved chunk, improving the coherence and completeness of the returned information.\n", "\n", "## Motivation\n", "\n", "Traditional vector search often returns isolated chunks of text, which may lack necessary context for full understanding. This approach aims to provide a more comprehensive view of the retrieved information by including neighboring text chunks.\n", "\n", "## Key Components\n", "\n", "1. PDF processing and text chunking\n", "2. Vector store creation using FAISS and OpenAI embeddings\n", "3. Custom retrieval function with context window\n", "4. Comparison between standard and context-enriched retrieval\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing\n", "\n", "1. The PDF is read and converted to a string.\n", "2. The text is split into chunks with surrounding sentences\n", "\n", "### Vector Store Creation\n", "\n", "1. OpenAI embeddings are used to create vector representations of the chunks.\n", "2. A FAISS vector store is created from these embeddings.\n", "\n", "### Context-Enriched Retrieval\n", "\n", "LlamaIndex has a special parser for such task. [SentenceWindowNodeParser](https://docs.llamaindex.ai/en/stable/module_guides/loading/node_parsers/modules/#sentencewindownodeparser) this parser splits documents into sentences. But the resulting nodes inculde the surronding senteces with a relation structure. Then, on the query [MetadataReplacementPostProcessor](https://docs.llamaindex.ai/en/stable/module_guides/querying/node_postprocessors/node_postprocessors/#metadatareplacementpostprocessor) helps connecting back these related sentences.\n", "\n", "### Retrieval Comparison\n", "\n", "The notebook includes a section to compare standard retrieval with the context-enriched approach.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Provides more coherent and contextually rich results\n", "2. Maintains the advantages of vector search while mitigating its tendency to return isolated text fragments\n", "3. Allows for flexible adjustment of the context window size\n", "\n", "## Conclusion\n", "\n", "This context enrichment window technique offers a promising way to improve the quality of retrieved information in vector-based document search systems. By providing surrounding context, it helps maintain the coherence and completeness of the retrieved information, potentially leading to better understanding and more accurate responses in downstream tasks such as question answering." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"context\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu llama-index python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from llama_index.core import Settings\n", "from llama_index.llms.openai import OpenAI\n", "from llama_index.embeddings.openai import OpenAIEmbedding\n", "from llama_index.core.readers import SimpleDirectoryReader\n", "from llama_index.vector_stores.faiss import FaissVectorStore\n", "from llama_index.core.ingestion import IngestionPipeline\n", "from llama_index.core.node_parser import SentenceWindowNodeParser, SentenceSplitter\n", "from llama_index.core import VectorStoreIndex\n", "from llama_index.core.postprocessor import MetadataReplacementPostProcessor\n", "import faiss\n", "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from pprint import pprint\n", "\n", "# Original path append replaced for Colab compatibility\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "\n", "# Llamaindex global settings for llm and embeddings\n", "EMBED_DIMENSION=512\n", "Settings.llm = OpenAI(model=\"gpt-3.5-turbo\")\n", "Settings.embed_model = OpenAIEmbedding(model=\"text-embedding-3-small\", dimensions=EMBED_DIMENSION)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Read docs" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "path = \"data/\"\n", "reader = SimpleDirectoryReader(input_dir=path, required_exts=['.pdf'])\n", "documents = reader.load_data()\n", "print(documents[0])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create vector store and retriever" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Create FaisVectorStore to store embeddings\n", "fais_index = faiss.IndexFlatL2(EMBED_DIMENSION)\n", "vector_store = FaissVectorStore(faiss_index=fais_index)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Ingestion Pipelines" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Ingestion Pipeline with Sentence Splitter" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "base_pipeline = IngestionPipeline(\n", " transformations=[SentenceSplitter()],\n", " vector_store=vector_store\n", ")\n", "\n", "base_nodes = base_pipeline.run(documents=documents)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Ingestion Pipeline with Sentence Window" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "node_parser = SentenceWindowNodeParser(\n", " # How many sentences on both sides to capture. \n", " # Setting this to 3 results in 7 sentences.\n", " window_size=3,\n", " # the metadata key for to be used in MetadataReplacementPostProcessor\n", " window_metadata_key=\"window\",\n", " # the metadata key that holds the original sentence\n", " original_text_metadata_key=\"original_sentence\"\n", ")\n", "\n", "# Create a pipeline with defined document transformations and vectorstore\n", "pipeline = IngestionPipeline(\n", " transformations=[node_parser],\n", " vector_store=vector_store,\n", ")\n", "\n", "windowed_nodes = pipeline.run(documents=documents)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Querying" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "query = \"Explain the role of deforestation and fossil fuels in climate change\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Querying *without* Metadata Replacement " ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Create vector index from base nodes\n", "base_index = VectorStoreIndex(base_nodes)\n", "\n", "# Instantiate query engine from vector index\n", "base_query_engine = base_index.as_query_engine(\n", " similarity_top_k=1,\n", ")\n", "\n", "# Send query to the engine to get related node(s)\n", "base_response = base_query_engine.query(query)\n", "\n", "print(base_response)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Print Metadata of the Retrieved Node" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "pprint(base_response.source_nodes[0].node.metadata)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Querying with Metadata Replacement\n", "\"Metadata replacement\" intutively might sound a little off topic since we're working on the base sentences. But LlamaIndex stores these \"before/after sentences\" in the metadata data of the nodes. Therefore to build back up these windows of sentences we need Metadata replacement post processor." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Create window index from nodes created from SentenceWindowNodeParser\n", "windowed_index = VectorStoreIndex(windowed_nodes)\n", "\n", "# Instantiate query enine with MetadataReplacementPostProcessor\n", "windowed_query_engine = windowed_index.as_query_engine(\n", " similarity_top_k=1,\n", " node_postprocessors=[\n", " MetadataReplacementPostProcessor(\n", " target_metadata_key=\"window\" # `window_metadata_key` key defined in SentenceWindowNodeParser\n", " )\n", " ],\n", ")\n", "\n", "# Send query to the engine to get related node(s)\n", "windowed_response = windowed_query_engine.query(query)\n", "\n", "print(windowed_response)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Print Metadata of the Retrieved Node" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Window and original sentence are added to the metadata\n", "pprint(windowed_response.source_nodes[0].node.metadata)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--context-enrichment-window-around-chunk-with-llamaindex)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.5" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/contextual_chunk_headers.ipynb ================================================ { "cells": [ { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Contextual Chunk Headers (CCH)\n", "\n", "## Overview\n", "\n", "Contextual chunk headers (CCH) is a method of creating chunk headers that contain higher-level context (such as document-level or section-level context), and prepending those chunk headers to the chunks prior to embedding them. This gives the embeddings a much more accurate and complete representation of the content and meaning of the text. In our testing, this feature leads to a substantial improvement in retrieval quality. In addition to increasing the rate at which the correct information is retrieved, CCH also reduces the rate at which irrelevant results show up in the search results. This reduces the rate at which the LLM misinterprets a piece of text in downstream chat and generation applications.\n", "\n", "## Motivation\n", "\n", "Many of the problems developers face with RAG come down to this: Individual chunks oftentimes do not contain sufficient context to be properly used by the retrieval system or the LLM. This leads to the inability to answer questions and, more worryingly, hallucinations.\n", "\n", "Examples of this problem\n", "- Chunks oftentimes refer to their subject via implicit references and pronouns. This causes them to not be retrieved when they should be, or to not be properly understood by the LLM.\n", "- Individual chunks oftentimes only make sense in the context of the entire section or document, and can be misleading when read on their own.\n", "\n", "## Key Components\n", "\n", "#### Contextual chunk headers\n", "The idea here is to add in higher-level context to the chunk by prepending a chunk header. This chunk header could be as simple as just the document title, or it could use a combination of document title, a concise document summary, and the full hierarchy of section and sub-section titles.\n", "\n", "## Method Details\n", "\n", "#### Context generation\n", "In the demonstration below we use an LLM to generate a descriptive title for the document. This is done through a simple prompt where you pass in a truncated version of the document text and ask the LLM to generate a descriptive title for the document. If you already have sufficiently descriptive document titles then you can directly use those instead. We've found that a document title is the simplest and most important kind of higher-level context to include in the chunk header.\n", "\n", "Other kinds of context you can include in the chunk header:\n", "- Concise document summary\n", "- Section/sub-section title(s)\n", " - This helps the retrieval system handle queries for larger sections or topics in documents.\n", "\n", "#### Embed chunks with chunk headers\n", "The text you embed for each chunk is simply the concatenation of the chunk header and the chunk text. If you use a reranker during retrieval, you'll want to make sure you use this same concatenation there too.\n", "\n", "#### Add chunk headers to search results\n", "Including the chunk headers when presenting the search results to the LLM is also beneficial as it gives the LLM more context, and makes it less likely that it misunderstands the meaning of a chunk." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![Your Technique Name](../images/contextual_chunk_headers.svg)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Setup\n", "\n", "You'll need a Cohere API key and an OpenAI API key for this notebook." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain openai python-dotenv tiktoken" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import cohere\n", "import tiktoken\n", "from typing import List\n", "from openai import OpenAI\n", "import os\n", "from dotenv import load_dotenv\n", "from langchain_text_splitters import RecursiveCharacterTextSplitter\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "os.environ[\"CO_API_KEY\"] = os.getenv('CO_API_KEY') # Cohere API key\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY') # OpenAI API key" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Load the document and split it into chunks\n", "We'll use the basic LangChain RecursiveCharacterTextSplitter for this demo, but you can combine CCH with more sophisticated chunking methods for even better performance." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/nike_2023_annual_report.txt https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/nike_2023_annual_report.txt\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "from langchain.text_splitter import RecursiveCharacterTextSplitter\n", "\n", "def split_into_chunks(text: str, chunk_size: int = 800) -> list[str]:\n", " \"\"\"\n", " Split a given text into chunks of specified size using RecursiveCharacterTextSplitter.\n", "\n", " Args:\n", " text (str): The input text to be split into chunks.\n", " chunk_size (int, optional): The maximum size of each chunk. Defaults to 800.\n", "\n", " Returns:\n", " list[str]: A list of text chunks.\n", "\n", " Example:\n", " >>> text = \"This is a sample text to be split into chunks.\"\n", " >>> chunks = split_into_chunks(text, chunk_size=10)\n", " >>> print(chunks)\n", " ['This is a', 'sample', 'text to', 'be split', 'into', 'chunks.']\n", " \"\"\"\n", " text_splitter = RecursiveCharacterTextSplitter(\n", " chunk_size=chunk_size,\n", " chunk_overlap=0,\n", " length_function=len\n", " )\n", " documents = text_splitter.create_documents([text])\n", " return [document.page_content for document in documents]\n", "\n", "# File path for the input document\n", "FILE_PATH = \"data/nike_2023_annual_report.txt\"\n", "\n", "# Read the document and split it into chunks\n", "with open(FILE_PATH, \"r\") as file:\n", " document_text = file.read()\n", "\n", "chunks = split_into_chunks(document_text, chunk_size=800)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Generate descriptive document title to use in chunk header" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "NIKE, INC. ANNUAL REPORT ON FORM 10-K\n" ] } ], "source": [ "# Constants\n", "DOCUMENT_TITLE_PROMPT = \"\"\"\n", "INSTRUCTIONS\n", "What is the title of the following document?\n", "\n", "Your response MUST be the title of the document, and nothing else. DO NOT respond with anything else.\n", "\n", "{document_title_guidance}\n", "\n", "{truncation_message}\n", "\n", "DOCUMENT\n", "{document_text}\n", "\"\"\".strip()\n", "\n", "TRUNCATION_MESSAGE = \"\"\"\n", "Also note that the document text provided below is just the first ~{num_words} words of the document. That should be plenty for this task. Your response should still pertain to the entire document, not just the text provided below.\n", "\"\"\".strip()\n", "\n", "MAX_CONTENT_TOKENS = 4000\n", "MODEL_NAME = \"gpt-4o-mini\"\n", "TOKEN_ENCODER = tiktoken.encoding_for_model('gpt-3.5-turbo')\n", "\n", "def make_llm_call(chat_messages: list[dict]) -> str:\n", " \"\"\"\n", " Make an API call to the OpenAI language model.\n", "\n", " Args:\n", " chat_messages (list[dict]): A list of message dictionaries for the chat completion.\n", "\n", " Returns:\n", " str: The generated response from the language model.\n", " \"\"\"\n", " client = OpenAI(api_key=os.getenv(\"OPENAI_API_KEY\"))\n", " response = client.chat.completions.create(\n", " model=MODEL_NAME,\n", " messages=chat_messages,\n", " max_tokens=MAX_CONTENT_TOKENS,\n", " temperature=0.2,\n", " )\n", " return response.choices[0].message.content.strip()\n", "\n", "def truncate_content(content: str, max_tokens: int) -> tuple[str, int]:\n", " \"\"\"\n", " Truncate the content to a specified maximum number of tokens.\n", "\n", " Args:\n", " content (str): The input text to be truncated.\n", " max_tokens (int): The maximum number of tokens to keep.\n", "\n", " Returns:\n", " tuple[str, int]: A tuple containing the truncated content and the number of tokens.\n", " \"\"\"\n", " tokens = TOKEN_ENCODER.encode(content, disallowed_special=())\n", " truncated_tokens = tokens[:max_tokens]\n", " return TOKEN_ENCODER.decode(truncated_tokens), min(len(tokens), max_tokens)\n", "\n", "def get_document_title(document_text: str, document_title_guidance: str = \"\") -> str:\n", " \"\"\"\n", " Extract the title of a document using a language model.\n", "\n", " Args:\n", " document_text (str): The text of the document.\n", " document_title_guidance (str, optional): Additional guidance for title extraction. Defaults to \"\".\n", "\n", " Returns:\n", " str: The extracted document title.\n", " \"\"\"\n", " # Truncate the content if it's too long\n", " document_text, num_tokens = truncate_content(document_text, MAX_CONTENT_TOKENS)\n", " truncation_message = TRUNCATION_MESSAGE.format(num_words=3000) if num_tokens >= MAX_CONTENT_TOKENS else \"\"\n", "\n", " # Prepare the prompt for title extraction\n", " prompt = DOCUMENT_TITLE_PROMPT.format(\n", " document_title_guidance=document_title_guidance,\n", " document_text=document_text,\n", " truncation_message=truncation_message\n", " )\n", " chat_messages = [{\"role\": \"user\", \"content\": prompt}]\n", " \n", " return make_llm_call(chat_messages)\n", "\n", "# Example usage\n", "if __name__ == \"__main__\":\n", " # Assuming document_text is defined elsewhere\n", " document_title = get_document_title(document_text)\n", " print(f\"Document Title: {document_title}\")" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Add chunk header and measure impact\n", "Let's look at a specific example to demonstrate the impact of adding a chunk header. We'll use the Cohere reranker to measure relevance to a query with and without a chunk header." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Chunk header:\n", "Document Title: NIKE, INC. ANNUAL REPORT ON FORM 10-K\n", "\n", "Chunk text:\n", "Given the broad and global scope of our operations, we are particularly vulnerable to the physical risks of climate change, such \n", "as shifts in weather patterns. Extreme weather conditions in the areas in which our retail stores, suppliers, manufacturers, \n", "customers, distribution centers, offices, headquarters and vendors are located could adversely affect our operating results and \n", "financial condition. Moreover, natural disasters such as earthquakes, hurricanes, wildfires, tsunamis, floods or droughts, whether \n", "occurring in the United States or abroad, and their related consequences and effects, including energy shortages and public \n", "health issues, have in the past temporarily disrupted, and could in the future disrupt, our operations, the operations of our\n", "\n", "Query: Nike climate change impact\n", "\n", "Similarity w/o contextual chunk header: 0.10576342\n", "Similarity with contextual chunk header: 0.92206234\n" ] } ], "source": [ "def rerank_documents(query: str, chunks: List[str]) -> List[float]:\n", " \"\"\"\n", " Use Cohere Rerank API to rerank the search results.\n", "\n", " Args:\n", " query (str): The search query.\n", " chunks (List[str]): List of document chunks to be reranked.\n", "\n", " Returns:\n", " List[float]: List of similarity scores for each chunk, in the original order.\n", " \"\"\"\n", " MODEL = \"rerank-english-v3.0\"\n", " client = cohere.Client(api_key=os.environ[\"CO_API_KEY\"])\n", "\n", " reranked_results = client.rerank(model=MODEL, query=query, documents=chunks)\n", " results = reranked_results.results\n", " reranked_indices = [result.index for result in results]\n", " reranked_similarity_scores = [result.relevance_score for result in results]\n", " \n", " # Convert back to order of original documents\n", " similarity_scores = [0] * len(chunks)\n", " for i, index in enumerate(reranked_indices):\n", " similarity_scores[index] = reranked_similarity_scores[i]\n", "\n", " return similarity_scores\n", "\n", "def compare_chunk_similarities(chunk_index: int, chunks: List[str], document_title: str, query: str) -> None:\n", " \"\"\"\n", " Compare similarity scores for a chunk with and without a contextual header.\n", "\n", " Args:\n", " chunk_index (int): Index of the chunk to inspect.\n", " chunks (List[str]): List of all document chunks.\n", " document_title (str): Title of the document.\n", " query (str): The search query to use for comparison.\n", "\n", " Prints:\n", " Chunk header, chunk text, query, and similarity scores with and without the header.\n", " \"\"\"\n", " chunk_text = chunks[chunk_index]\n", " chunk_wo_header = chunk_text\n", " chunk_w_header = f\"Document Title: {document_title}\\n\\n{chunk_text}\"\n", "\n", " similarity_scores = rerank_documents(query, [chunk_wo_header, chunk_w_header])\n", "\n", " print(f\"\\nChunk header:\\nDocument Title: {document_title}\")\n", " print(f\"\\nChunk text:\\n{chunk_text}\")\n", " print(f\"\\nQuery: {query}\")\n", " print(f\"\\nSimilarity without contextual chunk header: {similarity_scores[0]:.4f}\")\n", " print(f\"Similarity with contextual chunk header: {similarity_scores[1]:.4f}\")\n", "\n", "# Notebook cell for execution\n", "# Assuming chunks and document_title are defined in previous cells\n", "CHUNK_INDEX_TO_INSPECT = 86\n", "QUERY = \"Nike climate change impact\"\n", "\n", "compare_chunk_similarities(CHUNK_INDEX_TO_INSPECT, chunks, document_title, QUERY)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "This chunk is clearly about the impact of climate change on some organization, but it doesn't explicitly say \"Nike\" in it. So the relevance to the query \"Nike climate change impact\" in only about 0.1. By simply adding the document title to the chunk that similarity goes up to 0.92." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Eval results\n", "\n", "#### KITE\n", "\n", "We evaluated CCH on an end-to-end RAG benchmark we created, called KITE (Knowledge-Intensive Task Evaluation).\n", "\n", "KITE currently consists of 4 datasets and a total of 50 questions.\n", "- **AI Papers** - ~100 academic papers about AI and RAG, downloaded from arXiv in PDF form.\n", "- **BVP Cloud 10-Ks** - 10-Ks for all companies in the Bessemer Cloud Index (~70 of them), in PDF form.\n", "- **Sourcegraph Company Handbook** - ~800 markdown files, with their original directory structure, downloaded from Sourcegraph's publicly accessible company handbook GitHub [page](https://github.com/sourcegraph/handbook/tree/main/content).\n", "- **Supreme Court Opinions** - All Supreme Court opinions from Term Year 2022 (delivered from January '23 to June '23), downloaded from the official Supreme Court [website](https://www.supremecourt.gov/opinions/slipopinion/22) in PDF form.\n", "\n", "Ground truth answers are included with each sample. Most samples also include grading rubrics. Grading is done on a scale of 0-10 for each question, with a strong LLM doing the grading.\n", "\n", "We compare performance with and without CCH. For the CCH config we use document title and document summary. All other parameters remain the same between the two configurations. We use the Cohere 3 reranker, and we use GPT-4o for response generation.\n", "\n", "| | No-CCH | CCH |\n", "|-------------------------|----------|--------------|\n", "| AI Papers | 4.5 | 4.7 |\n", "| BVP Cloud | 2.6 | 6.3 |\n", "| Sourcegraph | 5.7 | 5.8 |\n", "| Supreme Court Opinions | 6.1 | 7.4 |\n", "| **Average** | 4.72 | 6.04 |\n", "\n", "We can see that CCH leads to an improvement in performance on each of the four datasets. Some datasets see a large improvement while others see a small improvement. The overall average score increases from 4.72 -> 6.04, a 27.9% increase.\n", "\n", "#### FinanceBench\n", "\n", "We've also evaluated CCH on FinanceBench, where it contributed to a score of 83%, compared to a baseline score of 19%. For that benchmark, we tested CCH and relevant segment extraction (RSE) jointly, so we can't say exactly how much CCH contributed to that result. But the combination of CCH and RSE clearly leads to substantial accuracy improvements on FinanceBench." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--contextual-chunk-headers)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.12" }, "vscode": { "interpreter": { "hash": "44d0561a9d33f22b2e67e0485c48036e39d1c698628b030a9859974b559ff507" } } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/contextual_compression.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Contextual Compression in Document Retrieval\n", "\n", "## Overview\n", "\n", "This code demonstrates the implementation of contextual compression in a document retrieval system using LangChain and OpenAI's language models. The technique aims to improve the relevance and conciseness of retrieved information by compressing and extracting the most pertinent parts of documents in the context of a given query.\n", "\n", "## Motivation\n", "\n", "Traditional document retrieval systems often return entire chunks or documents, which may contain irrelevant information. Contextual compression addresses this by intelligently extracting and compressing only the most relevant parts of retrieved documents, leading to more focused and efficient information retrieval.\n", "\n", "## Key Components\n", "\n", "1. Vector store creation from a PDF document\n", "2. Base retriever setup\n", "3. LLM-based contextual compressor\n", "4. Contextual compression retriever\n", "5. Question-answering chain integrating the compressed retriever\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing and Vector Store Creation\n", "\n", "1. The PDF is processed and encoded into a vector store using a custom `encode_pdf` function.\n", "\n", "### Retriever and Compressor Setup\n", "\n", "1. A base retriever is created from the vector store.\n", "2. An LLM-based contextual compressor (LLMChainExtractor) is initialized using OpenAI's GPT-4 model.\n", "\n", "### Contextual Compression Retriever\n", "\n", "1. The base retriever and compressor are combined into a ContextualCompressionRetriever.\n", "2. This retriever first fetches documents using the base retriever, then applies the compressor to extract the most relevant information.\n", "\n", "### Question-Answering Chain\n", "\n", "1. A RetrievalQA chain is created, integrating the compression retriever.\n", "2. This chain uses the compressed and extracted information to generate answers to queries.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Improved relevance: The system returns only the most pertinent information to the query.\n", "2. Increased efficiency: By compressing and extracting relevant parts, it reduces the amount of text the LLM needs to process.\n", "3. Enhanced context understanding: The LLM-based compressor can understand the context of the query and extract information accordingly.\n", "4. Flexibility: The system can be easily adapted to different types of documents and queries.\n", "\n", "## Conclusion\n", "\n", "Contextual compression in document retrieval offers a powerful way to enhance the quality and efficiency of information retrieval systems. By intelligently extracting and compressing relevant information, it provides more focused and context-aware responses to queries. This approach has potential applications in various fields requiring efficient and accurate information retrieval from large document collections." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"contextual\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from langchain.retrievers.document_compressors import LLMChainExtractor\n", "from langchain.retrievers import ContextualCompressionRetriever\n", "from langchain.chains import RetrievalQA\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define document's path" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a vector store" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "vector_store = encode_pdf(path)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a retriever + contexual compressor + combine them " ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "# Create a retriever\n", "retriever = vector_store.as_retriever()\n", "\n", "\n", "#Create a contextual compressor\n", "llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o-mini\", max_tokens=4000)\n", "compressor = LLMChainExtractor.from_llm(llm)\n", "\n", "#Combine the retriever with the compressor\n", "compression_retriever = ContextualCompressionRetriever(\n", " base_compressor=compressor,\n", " base_retriever=retriever\n", ")\n", "\n", "# Create a QA chain with the compressed retriever\n", "qa_chain = RetrievalQA.from_chain_type(\n", " llm=llm,\n", " retriever=compression_retriever,\n", " return_source_documents=True\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example usage" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The main topic of the document is climate change, focusing on international collaboration, national strategies, policy development, and the ethical dimensions of climate justice. It discusses frameworks like the UNFCCC and the Paris Agreement, as well as the importance of sustainable practices for future generations.\n", "Source documents: [Document(metadata={'source': '../data/Understanding_Climate_Change.pdf', 'page': 9}, page_content='Chapter 6: Global and Local Climate Action \\nInternational Collaboration \\nUnited Nations Framework Convention on Climate Change (UNFCCC) \\nThe UNFCCC is an international treaty aimed at addressing climate change. It provides a \\nframework for negotiating specific protocols and agreements, such as the Kyoto Protocol and \\nthe Paris Agreement. Global cooperation under the UNFCCC is crucial for coordinated \\nclimate action. \\nParis Agreement \\nThe Paris Agreement, adopted in 2015, aims to limit global warming to well below 2 degrees \\nCelsius above pre-industrial levels, with efforts to limit the increase to 1.5 degrees Celsius. \\nCountries submit nationally determined contributions (NDCs) outlining their climate action \\nplans and targets. \\nNational Strategies \\nCarbon Pricing \\nCarbon pricing mechanisms, such as carbon taxes and cap-and-trade systems, incentivize \\nemission reductions by assigning a cost to carbon emissions. These policies encourage'), Document(metadata={'source': '../data/Understanding_Climate_Change.pdf', 'page': 27}, page_content='Legacy for Future Generations \\nOur actions today shape the world for future generations. Ensuring a sustainable and resilient \\nplanet is our responsibility to future generations. By working together, we can create a legacy \\nof environmental stewardship, social equity, and global solidarity. \\nChapter 19: Climate Change and Policy \\nPolicy Development and Implementation \\nNational Climate Policies \\nCountries around the world are developing and implementing national climate policies to \\naddress climate change. These policies set emission reduction targets, promote renewable \\nenergy, and support adaptation measures. Effective policy implementation requires'), Document(metadata={'source': '../data/Understanding_Climate_Change.pdf', 'page': 18}, page_content='This vision includes a healthy planet, thriving ecosystems, and equitable societies. Working together towards this vision creates a sense of purpose and motivation . By embracing these principles and taking concerted action, we can address the urgent challenge of climate change and build a sustainable, resilient, and equitable world for all. The path forward requires courage, commitment, and collaboration, but the rewa rds are immense—a thriving planet and a prosperous future for generations to come. \\nChapter 13: Climate Change and Social Justice \\nClimate Justice \\nUnderstanding Climate Justice \\nClimate justice emphasizes the ethical dimensions of climate change, recognizing that its impacts are not evenly distributed. Vulnerable populations, including low -income communities, indigenous peoples, and marginalized groups, often face the greatest ris ks while contributing the least to greenhouse gas emissions. Climate justice advocates for')]\n" ] } ], "source": [ "query = \"What is the main topic of the document?\"\n", "result = qa_chain.invoke({\"query\": query})\n", "print(result[\"result\"])\n", "print(\"Source documents:\", result[\"source_documents\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--contextual-compression)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.1" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/crag.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Corrective RAG Process: Retrieval-Augmented Generation with Dynamic Correction\n", "\n", "## Overview\n", "\n", "The Corrective RAG (Retrieval-Augmented Generation) process is an advanced information retrieval and response generation system. It extends the standard RAG approach by dynamically evaluating and correcting the retrieval process, combining the power of vector databases, web search, and language models to provide accurate and context-aware responses to user queries.\n", "\n", "## Motivation\n", "\n", "While traditional RAG systems have improved information retrieval and response generation, they can still fall short when the retrieved information is irrelevant or outdated. The Corrective RAG process addresses these limitations by:\n", "\n", "1. Leveraging pre-existing knowledge bases\n", "2. Evaluating the relevance of retrieved information\n", "3. Dynamically searching the web when necessary\n", "4. Refining and combining knowledge from multiple sources\n", "5. Generating human-like responses based on the most appropriate knowledge\n", "\n", "## Key Components\n", "\n", "1. **FAISS Index**: A vector database for efficient similarity search of pre-existing knowledge.\n", "2. **Retrieval Evaluator**: Assesses the relevance of retrieved documents to the query.\n", "3. **Knowledge Refinement**: Extracts key information from documents when necessary.\n", "4. **Web Search Query Rewriter**: Optimizes queries for web searches when local knowledge is insufficient.\n", "5. **Response Generator**: Creates human-like responses based on the accumulated knowledge.\n", "\n", "## Method Details\n", "\n", "1. **Document Retrieval**: \n", " - Performs similarity search in the FAISS index to find relevant documents.\n", " - Retrieves top-k documents (default k=3).\n", "\n", "2. **Document Evaluation**:\n", " - Calculates relevance scores for each retrieved document.\n", " - Determines the best course of action based on the highest relevance score.\n", "\n", "3. **Corrective Knowledge Acquisition**:\n", " - If high relevance (score > 0.7): Uses the most relevant document as-is.\n", " - If low relevance (score < 0.3): Corrects by performing a web search with a rewritten query.\n", " - If ambiguous (0.3 ≤ score ≤ 0.7): Corrects by combining the most relevant document with web search results.\n", "\n", "4. **Adaptive Knowledge Processing**:\n", " - For web search results: Refines the knowledge to extract key points.\n", " - For ambiguous cases: Combines raw document content with refined web search results.\n", "\n", "5. **Response Generation**:\n", " - Uses a language model to generate a human-like response based on the query and acquired knowledge.\n", " - Includes source information in the response for transparency.\n", "\n", "## Benefits of the Corrective RAG Approach\n", "\n", "1. **Dynamic Correction**: Adapts to the quality of retrieved information, ensuring relevance and accuracy.\n", "2. **Flexibility**: Leverages both pre-existing knowledge and web search as needed.\n", "3. **Accuracy**: Evaluates the relevance of information before using it, ensuring high-quality responses.\n", "4. **Transparency**: Provides source information, allowing users to verify the origin of the information.\n", "5. **Efficiency**: Uses vector search for quick retrieval from large knowledge bases.\n", "6. **Contextual Understanding**: Combines multiple sources of information when necessary to provide comprehensive responses.\n", "7. **Up-to-date Information**: Can supplement or replace outdated local knowledge with current web information.\n", "\n", "## Conclusion\n", "\n", "The Corrective RAG process represents a sophisticated evolution of the standard RAG approach. By intelligently evaluating and correcting the retrieval process, it overcomes common limitations of traditional RAG systems. This dynamic approach ensures that responses are based on the most relevant and up-to-date information available, whether from local knowledge bases or the web. The system's ability to adapt its information sourcing strategy based on relevance scores makes it particularly suited for applications requiring high accuracy and current information, such as research assistance, dynamic knowledge bases, and advanced question-answering systems." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"Corrective\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain langchain-openai python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from langchain.prompts import PromptTemplate\n", "from langchain_openai import ChatOpenAI\n", "from langchain_core.pydantic_v1 import BaseModel, Field\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "from langchain.tools import DuckDuckGoSearchResults\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define files path" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a vector store" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "vectorstore = encode_pdf(path)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Initialize OpenAI language model\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "llm = ChatOpenAI(model=\"gpt-4o-mini\", max_tokens=1000, temperature=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Initialize search tool" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "search = DuckDuckGoSearchResults()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define retrieval evaluator, knowledge refinement and query rewriter llm chains" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "# Retrieval Evaluator\n", "class RetrievalEvaluatorInput(BaseModel):\n", " relevance_score: float = Field(..., description=\"The relevance score of the document to the query. the score should be between 0 and 1.\")\n", "def retrieval_evaluator(query: str, document: str) -> float:\n", " prompt = PromptTemplate(\n", " input_variables=[\"query\", \"document\"],\n", " template=\"On a scale from 0 to 1, how relevant is the following document to the query? Query: {query}\\nDocument: {document}\\nRelevance score:\"\n", " )\n", " chain = prompt | llm.with_structured_output(RetrievalEvaluatorInput)\n", " input_variables = {\"query\": query, \"document\": document}\n", " result = chain.invoke(input_variables).relevance_score\n", " return result\n", "\n", "# Knowledge Refinement\n", "class KnowledgeRefinementInput(BaseModel):\n", " key_points: str = Field(..., description=\"The document to extract key information from.\")\n", "def knowledge_refinement(document: str) -> List[str]:\n", " prompt = PromptTemplate(\n", " input_variables=[\"document\"],\n", " template=\"Extract the key information from the following document in bullet points:\\n{document}\\nKey points:\"\n", " )\n", " chain = prompt | llm.with_structured_output(KnowledgeRefinementInput)\n", " input_variables = {\"document\": document}\n", " result = chain.invoke(input_variables).key_points\n", " return [point.strip() for point in result.split('\\n') if point.strip()]\n", "\n", "# Web Search Query Rewriter\n", "class QueryRewriterInput(BaseModel):\n", " query: str = Field(..., description=\"The query to rewrite.\")\n", "def rewrite_query(query: str) -> str:\n", " prompt = PromptTemplate(\n", " input_variables=[\"query\"],\n", " template=\"Rewrite the following query to make it more suitable for a web search:\\n{query}\\nRewritten query:\"\n", " )\n", " chain = prompt | llm.with_structured_output(QueryRewriterInput)\n", " input_variables = {\"query\": query}\n", " return chain.invoke(input_variables).query.strip()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Helper function to parse search results\n" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "def parse_search_results(results_string: str) -> List[Tuple[str, str]]:\n", " \"\"\"\n", " Parse a JSON string of search results into a list of title-link tuples.\n", "\n", " Args:\n", " results_string (str): A JSON-formatted string containing search results.\n", "\n", " Returns:\n", " List[Tuple[str, str]]: A list of tuples, where each tuple contains the title and link of a search result.\n", " If parsing fails, an empty list is returned.\n", " \"\"\"\n", " try:\n", " # Attempt to parse the JSON string\n", " results = json.loads(results_string)\n", " # Extract and return the title and link from each result\n", " return [(result.get('title', 'Untitled'), result.get('link', '')) for result in results]\n", " except json.JSONDecodeError:\n", " # Handle JSON decoding errors by returning an empty list\n", " print(\"Error parsing search results. Returning empty list.\")\n", " return []" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define sub functions for the CRAG process" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "def retrieve_documents(query: str, faiss_index: FAISS, k: int = 3) -> List[str]:\n", " \"\"\"\n", " Retrieve documents based on a query using a FAISS index.\n", "\n", " Args:\n", " query (str): The query string to search for.\n", " faiss_index (FAISS): The FAISS index used for similarity search.\n", " k (int): The number of top documents to retrieve. Defaults to 3.\n", "\n", " Returns:\n", " List[str]: A list of the retrieved document contents.\n", " \"\"\"\n", " docs = faiss_index.similarity_search(query, k=k)\n", " return [doc.page_content for doc in docs]\n", "\n", "def evaluate_documents(query: str, documents: List[str]) -> List[float]:\n", " \"\"\"\n", " Evaluate the relevance of documents based on a query.\n", "\n", " Args:\n", " query (str): The query string.\n", " documents (List[str]): A list of document contents to evaluate.\n", "\n", " Returns:\n", " List[float]: A list of relevance scores for each document.\n", " \"\"\"\n", " return [retrieval_evaluator(query, doc) for doc in documents]\n", "\n", "def perform_web_search(query: str) -> Tuple[List[str], List[Tuple[str, str]]]:\n", " \"\"\"\n", " Perform a web search based on a query.\n", "\n", " Args:\n", " query (str): The query string to search for.\n", "\n", " Returns:\n", " Tuple[List[str], List[Tuple[str, str]]]: \n", " - A list of refined knowledge obtained from the web search.\n", " - A list of tuples containing titles and links of the sources.\n", " \"\"\"\n", " rewritten_query = rewrite_query(query)\n", " web_results = search.run(rewritten_query)\n", " web_knowledge = knowledge_refinement(web_results)\n", " sources = parse_search_results(web_results)\n", " return web_knowledge, sources\n", "\n", "def generate_response(query: str, knowledge: str, sources: List[Tuple[str, str]]) -> str:\n", " \"\"\"\n", " Generate a response to a query using knowledge and sources.\n", "\n", " Args:\n", " query (str): The query string.\n", " knowledge (str): The refined knowledge to use in the response.\n", " sources (List[Tuple[str, str]]): A list of tuples containing titles and links of the sources.\n", "\n", " Returns:\n", " str: The generated response.\n", " \"\"\"\n", " response_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"knowledge\", \"sources\"],\n", " template=\"Based on the following knowledge, answer the query. Include the sources with their links (if available) at the end of your answer:\\nQuery: {query}\\nKnowledge: {knowledge}\\nSources: {sources}\\nAnswer:\"\n", " )\n", " input_variables = {\n", " \"query\": query,\n", " \"knowledge\": knowledge,\n", " \"sources\": \"\\n\".join([f\"{title}: {link}\" if link else title for title, link in sources])\n", " }\n", " response_chain = response_prompt | llm\n", " return response_chain.invoke(input_variables).content\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### CRAG process\n" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "def crag_process(query: str, faiss_index: FAISS) -> str:\n", " \"\"\"\n", " Process a query by retrieving, evaluating, and using documents or performing a web search to generate a response.\n", "\n", " Args:\n", " query (str): The query string to process.\n", " faiss_index (FAISS): The FAISS index used for document retrieval.\n", "\n", " Returns:\n", " str: The generated response based on the query.\n", " \"\"\"\n", " print(f\"\\nProcessing query: {query}\")\n", "\n", " # Retrieve and evaluate documents\n", " retrieved_docs = retrieve_documents(query, faiss_index)\n", " eval_scores = evaluate_documents(query, retrieved_docs)\n", " \n", " print(f\"\\nRetrieved {len(retrieved_docs)} documents\")\n", " print(f\"Evaluation scores: {eval_scores}\")\n", "\n", " # Determine action based on evaluation scores\n", " max_score = max(eval_scores)\n", " sources = []\n", " \n", " if max_score > 0.7:\n", " print(\"\\nAction: Correct - Using retrieved document\")\n", " best_doc = retrieved_docs[eval_scores.index(max_score)]\n", " final_knowledge = best_doc\n", " sources.append((\"Retrieved document\", \"\"))\n", " elif max_score < 0.3:\n", " print(\"\\nAction: Incorrect - Performing web search\")\n", " final_knowledge, sources = perform_web_search(query)\n", " else:\n", " print(\"\\nAction: Ambiguous - Combining retrieved document and web search\")\n", " best_doc = retrieved_docs[eval_scores.index(max_score)]\n", " # Refine the retrieved knowledge\n", " retrieved_knowledge = knowledge_refinement(best_doc)\n", " web_knowledge, web_sources = perform_web_search(query)\n", " final_knowledge = \"\\n\".join(retrieved_knowledge + web_knowledge)\n", " sources = [(\"Retrieved document\", \"\")] + web_sources\n", "\n", " print(\"\\nFinal knowledge:\")\n", " print(final_knowledge)\n", " \n", " print(\"\\nSources:\")\n", " for title, link in sources:\n", " print(f\"{title}: {link}\" if link else title)\n", "\n", " # Generate response\n", " print(\"\\nGenerating response...\")\n", " response = generate_response(query, final_knowledge, sources)\n", "\n", " print(\"\\nResponse generated\")\n", " return response" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example query with high relevance to the document\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "query = \"What are the main causes of climate change?\"\n", "result = crag_process(query, vectorstore)\n", "print(f\"Query: {query}\")\n", "print(f\"Answer: {result}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example query with low relevance to the document\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "query = \"how did harry beat quirrell?\"\n", "result = crag_process(query, vectorstore)\n", "print(f\"Query: {query}\")\n", "print(f\"Answer: {result}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--crag)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/dartboard.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Dartboard RAG: Retrieval-Augmented Generation with Balanced Relevance and Diversity\n", "\n", "## Overview\n", "The **Dartboard RAG** process addresses a common challenge in large knowledge bases: ensuring the retrieved information is both relevant and non-redundant. By explicitly optimizing a combined relevance-diversity scoring function, it prevents multiple top-k documents from offering the same information. This approach is drawn from the elegant method in thepaper:\n", "\n", "> [*Better RAG using Relevant Information Gain*](https://arxiv.org/abs/2407.12101)\n", "\n", "The paper outlines three variations of the core idea—hybrid RAG (dense + sparse), a cross-encoder version, and a vanilla approach. The **vanilla approach** conveys the fundamental concept most directly, and this implementation extends it with optional weights to control the balance between relevance and diversity.\n", "\n", "## Motivation\n", "\n", "1. **Dense, Overlapping Knowledge Bases** \n", " In large databases, documents may repeat similar content, causing redundancy in top-k retrieval.\n", "\n", "2. **Improved Information Coverage** \n", " Combining relevance and diversity yields a richer set of documents, mitigating the “echo chamber” effect of overly similar content.\n", "\n", "\n", "## Key Components\n", "\n", "1. **Relevance & Diversity Combination** \n", " - Computes a score factoring in both how pertinent a document is to the query and how distinct it is from already chosen documents.\n", "\n", "2. **Weighted Balancing** \n", " - Introduces RELEVANCE_WEIGHT and DIVERSITY_WEIGHT to allow dynamic control of scoring. \n", " - Helps in avoiding overly diverse but less relevant results.\n", "\n", "3. **Production-Ready Code** \n", " - Derived from the official implementation yet reorganized for clarity. \n", " - Allows easier integration into existing RAG pipelines.\n", "\n", "## Method Details\n", "\n", "1. **Document Retrieval** \n", " - Obtain an initial set of candidate documents based on similarity (e.g., cosine or BM25). \n", " - Typically retrieves top-N candidates as a starting point.\n", "\n", "2. **Scoring & Selection** \n", " - Each document’s overall score combines **relevance** and **diversity**: \n", " - Select the highest-scoring document, then penalize documents that are overly similar to it. \n", " - Repeat until top-k documents are identified.\n", "\n", "3. **Hybrid / Fusion & Cross-Encoder Support** \n", " Essentially, all you need are distances between documents and the query, and distances between documents. You can easily extract these from hybrid / fusion retrieval or from cross-encoder retrieval. The only recommendation I have is to rely less on raking based scores.\n", " - For **hybrid / fusion retrieval**: Merge similarities (dense and sparse / BM25) into a single distance. This can be achieved by combining cosine similarity over the dense and the sparse vectors (e.g. averaging them). the move to distances is straightforward (1 - mean cosine similarity). \n", " - For **cross-encoders**: You can directly use the cross-encoder similarity scores (1- similarity), potentially adjusting with scaling factors.\n", "\n", "4. **Balancing & Adjustment** \n", " - Tune DIVERSITY_WEIGHT and RELEVANCE_WEIGHT based on your needs and the density of your dataset. \n", "\n", "\n", "\n", "By integrating both **relevance** and **diversity** into retrieval, the Dartboard RAG approach ensures that top-k documents collectively offer richer, more comprehensive information—leading to higher-quality responses in Retrieval-Augmented Generation systems.\n", "\n", "The paper also has an official code implemention, and this code is based on it, but I think this one here is more readable, manageable and production ready." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install numpy python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Please enter your OpenAI API key: \n" ] } ], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from scipy.special import logsumexp\n", "from typing import Tuple, List, Any\n", "import numpy as np\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "# Set the OpenAI API key environment variable (comment out if not using OpenAI)\n", "if not os.getenv('OPENAI_API_KEY'):\n", " print(\"Please enter your OpenAI API key: \")\n", " os.environ[\"OPENAI_API_KEY\"] = input(\"Please enter your OpenAI API key: \")\n", "else:\n", " os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Read Docs" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Encode document" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "# this part is same like simple_rag.ipynb, only simulating a dense dataset\n", "def encode_pdf(path, chunk_size=1000, chunk_overlap=200):\n", " \"\"\"\n", " Encodes a PDF book into a vector store using OpenAI embeddings.\n", "\n", " Args:\n", " path: The path to the PDF file.\n", " chunk_size: The desired size of each text chunk.\n", " chunk_overlap: The amount of overlap between consecutive chunks.\n", "\n", " Returns:\n", " A FAISS vector store containing the encoded book content.\n", " \"\"\"\n", "\n", " # Load PDF documents\n", " loader = PyPDFLoader(path)\n", " documents = loader.load()\n", " documents=documents*5 # load every document 5 times to emulate a dense dataset\n", "\n", " # Split documents into chunks\n", " text_splitter = RecursiveCharacterTextSplitter(\n", " chunk_size=chunk_size, chunk_overlap=chunk_overlap, length_function=len\n", " )\n", " texts = text_splitter.split_documents(documents)\n", " cleaned_texts = replace_t_with_space(texts)\n", "\n", " # Create embeddings (Tested with OpenAI and Amazon Bedrock)\n", " embeddings = get_langchain_embedding_provider(EmbeddingProvider.OPENAI)\n", " #embeddings = get_langchain_embedding_provider(EmbeddingProvider.AMAZON_BEDROCK)\n", "\n", " # Create vector store\n", " vectorstore = FAISS.from_documents(cleaned_texts, embeddings)\n", "\n", " return vectorstore" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create Vector store\n" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "chunks_vector_store = encode_pdf(path, chunk_size=1000, chunk_overlap=200)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Some helper functions for using the vector store for retrieval.\n", "this part is same like simple_rag.ipynb, only its using the actual FAISS index (not the wrapper)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "\n", "def idx_to_text(idx:int):\n", " \"\"\"\n", " Convert a Vector store index to the corresponding text.\n", " \"\"\"\n", " docstore_id = chunks_vector_store.index_to_docstore_id[idx]\n", " document = chunks_vector_store.docstore.search(docstore_id)\n", " return document.page_content\n", "\n", "\n", "def get_context(query:str,k:int=5) -> Tuple[np.ndarray, np.ndarray, List[str]]:\n", " \"\"\"\n", " Retrieve top k context items for a query using top k retrieval.\n", " \"\"\"\n", " # regular top k retrieval\n", " q_vec=chunks_vector_store.embedding_function.embed_documents([query])\n", " _,indices=chunks_vector_store.index.search(np.array(q_vec),k=k)\n", "\n", " texts = [idx_to_text(i) for i in indices[0]]\n", " return texts\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "\n", "test_query = \"What is the main cause of climate change?\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Regular top k retrieval\n", "- This demonstration shows that when database is dense (here we simulate density by loading each document 5 times), the results are not good, we don't get the most relevant results. Note that the top 3 results are all repetitions of the same document." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Context 1:\n", "driven by human activities, particularly the emission of greenhou se gases. \n", "Chapter 2: Causes of Climate Change \n", "Greenhouse Gases \n", "The primary cause of recent climate change is the increase in greenhouse gases in the \n", "atmosphere. Greenhouse gases, such as carbon dioxide (CO2), methane (CH4), and nitrous \n", "oxide (N2O), trap heat from the sun, creating a \"greenhouse effect.\" This effect is essential \n", "for life on Earth, as it keeps the planet warm enough to support life. However, human \n", "activities have intensified this natural process, leading to a warmer climate. \n", "Fossil Fuels \n", "Burning fossil fuels for energy releases large amounts of CO2. This includes coal, oil, and \n", "natural gas used for electricity, heating, and transportation. The industrial revolution marked \n", "the beginning of a significant increase in fossil fuel consumption, which continues to rise \n", "today. \n", "Coal\n", "\n", "\n", "Context 2:\n", "driven by human activities, particularly the emission of greenhou se gases. \n", "Chapter 2: Causes of Climate Change \n", "Greenhouse Gases \n", "The primary cause of recent climate change is the increase in greenhouse gases in the \n", "atmosphere. Greenhouse gases, such as carbon dioxide (CO2), methane (CH4), and nitrous \n", "oxide (N2O), trap heat from the sun, creating a \"greenhouse effect.\" This effect is essential \n", "for life on Earth, as it keeps the planet warm enough to support life. However, human \n", "activities have intensified this natural process, leading to a warmer climate. \n", "Fossil Fuels \n", "Burning fossil fuels for energy releases large amounts of CO2. This includes coal, oil, and \n", "natural gas used for electricity, heating, and transportation. The industrial revolution marked \n", "the beginning of a significant increase in fossil fuel consumption, which continues to rise \n", "today. \n", "Coal\n", "\n", "\n", "Context 3:\n", "driven by human activities, particularly the emission of greenhou se gases. \n", "Chapter 2: Causes of Climate Change \n", "Greenhouse Gases \n", "The primary cause of recent climate change is the increase in greenhouse gases in the \n", "atmosphere. Greenhouse gases, such as carbon dioxide (CO2), methane (CH4), and nitrous \n", "oxide (N2O), trap heat from the sun, creating a \"greenhouse effect.\" This effect is essential \n", "for life on Earth, as it keeps the planet warm enough to support life. However, human \n", "activities have intensified this natural process, leading to a warmer climate. \n", "Fossil Fuels \n", "Burning fossil fuels for energy releases large amounts of CO2. This includes coal, oil, and \n", "natural gas used for electricity, heating, and transportation. The industrial revolution marked \n", "the beginning of a significant increase in fossil fuel consumption, which continues to rise \n", "today. \n", "Coal\n", "\n", "\n" ] } ], "source": [ "texts=get_context(test_query,k=3)\n", "show_context(texts)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Now for the real part :) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "### More utils for distances normalization" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "def lognorm(dist:np.ndarray, sigma:float):\n", " \"\"\"\n", " Calculate the log-normal probability for a given distance and sigma.\n", " \"\"\"\n", " if sigma < 1e-9: \n", " return -np.inf * dist\n", " return -np.log(sigma) - 0.5 * np.log(2 * np.pi) - dist**2 / (2 * sigma**2)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Greedy Dartboard Search\n", "\n", "This is the core algorithm: A search algorithm that selects a diverse set of relevant documents from a collection by balancing two factors: relevance to the query and diversity among selected documents.\n", "\n", "Given distances between a query and documents, plus distances between all documents, the algorithm:\n", "\n", "1. Selects the most relevant document first\n", "2. Iteratively selects additional documents by combining:\n", " - Relevance to the original query\n", " - Diversity from previously selected documents\n", "\n", "The balance between relevance and diversity is controlled by weights:\n", "- `DIVERSITY_WEIGHT`: Importance of difference from existing selections\n", "- `RELEVANCE_WEIGHT`: Importance of relevance to query\n", "- `SIGMA`: Smoothing parameter for probability conversion\n", "\n", "The algorithm returns both the selected documents and their selection scores, making it useful for applications like search results where you want relevant but varied results.\n", "\n", "For example, when searching news articles, it would first return the most relevant article, then find articles that are both on-topic and provide new information, avoiding redundant selections." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Configuration parameters\n", "DIVERSITY_WEIGHT = 1.0 # Weight for diversity in document selection\n", "RELEVANCE_WEIGHT = 1.0 # Weight for relevance to query\n", "SIGMA = 0.1 # Smoothing parameter for probability distribution\n", "\n", "def greedy_dartsearch(\n", " query_distances: np.ndarray,\n", " document_distances: np.ndarray,\n", " documents: List[str],\n", " num_results: int\n", ") -> Tuple[List[str], List[float]]:\n", " \"\"\"\n", " Perform greedy dartboard search to select top k documents balancing relevance and diversity.\n", " \n", " Args:\n", " query_distances: Distance between query and each document\n", " document_distances: Pairwise distances between documents\n", " documents: List of document texts\n", " num_results: Number of documents to return\n", " \n", " Returns:\n", " Tuple containing:\n", " - List of selected document texts\n", " - List of selection scores for each document\n", " \"\"\"\n", " # Avoid division by zero in probability calculations\n", " sigma = max(SIGMA, 1e-5)\n", " \n", " # Convert distances to probability distributions\n", " query_probabilities = lognorm(query_distances, sigma)\n", " document_probabilities = lognorm(document_distances, sigma)\n", " \n", " # Initialize with most relevant document\n", " \n", " most_relevant_idx = np.argmax(query_probabilities)\n", " selected_indices = np.array([most_relevant_idx])\n", " selection_scores = [1.0] # dummy score for the first document\n", " # Get initial distances from the first selected document\n", " max_distances = document_probabilities[most_relevant_idx]\n", " \n", " # Select remaining documents\n", " while len(selected_indices) < num_results:\n", " # Update maximum distances considering new document\n", " updated_distances = np.maximum(max_distances, document_probabilities)\n", " \n", " # Calculate combined diversity and relevance scores\n", " combined_scores = (\n", " updated_distances * DIVERSITY_WEIGHT +\n", " query_probabilities * RELEVANCE_WEIGHT\n", " )\n", " \n", " # Normalize scores and mask already selected documents\n", " normalized_scores = logsumexp(combined_scores, axis=1)\n", " normalized_scores[selected_indices] = -np.inf\n", " \n", " # Select best remaining document\n", " best_idx = np.argmax(normalized_scores)\n", " best_score = np.max(normalized_scores)\n", " \n", " # Update tracking variables\n", " max_distances = updated_distances[best_idx]\n", " selected_indices = np.append(selected_indices, best_idx)\n", " selection_scores.append(best_score)\n", " \n", " # Return selected documents and their scores\n", " selected_documents = [documents[i] for i in selected_indices]\n", " return selected_documents, selection_scores" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Dartboard Context Retrieval\n", "\n", "### Main function for using the dartboard retrieval. This serves instead of get_context (which is simple RAG). It:\n", "\n", "1. Takes a text query, vectorizes it, gets the top k documents (and their vectors) via simple RAG\n", "2. Uses these vectors to calculate the similarities to query and between candidate matches\n", "3. Runs the dartboard algorithm to refine the candidate matches to a final list of k documents\n", "4. Returns the final list of documents and their scores" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "\n", "def get_context_with_dartboard(\n", " query: str,\n", " num_results: int = 5,\n", " oversampling_factor: int = 3\n", ") -> Tuple[List[str], List[float]]:\n", " \"\"\"\n", " Retrieve most relevant and diverse context items for a query using the dartboard algorithm.\n", " \n", " Args:\n", " query: The search query string\n", " num_results: Number of context items to return (default: 5)\n", " oversampling_factor: Factor to oversample initial results for better diversity (default: 3)\n", " \n", " Returns:\n", " Tuple containing:\n", " - List of selected context texts\n", " - List of selection scores\n", " \n", " Note:\n", " The function uses cosine similarity converted to distance. Initial retrieval \n", " fetches oversampling_factor * num_results items to ensure sufficient diversity \n", " in the final selection.\n", " \"\"\"\n", " # Embed query and retrieve initial candidates\n", " query_embedding = chunks_vector_store.embedding_function.embed_documents([query])\n", " _, candidate_indices = chunks_vector_store.index.search(\n", " np.array(query_embedding),\n", " k=num_results * oversampling_factor\n", " )\n", " \n", " # Get document vectors and texts for candidates\n", " candidate_vectors = np.array(\n", " chunks_vector_store.index.reconstruct_batch(candidate_indices[0])\n", " )\n", " candidate_texts = [idx_to_text(idx) for idx in candidate_indices[0]]\n", " \n", " # Calculate distance matrices\n", " # Using 1 - cosine_similarity as distance metric\n", " document_distances = 1 - np.dot(candidate_vectors, candidate_vectors.T)\n", " query_distances = 1 - np.dot(query_embedding, candidate_vectors.T)\n", " \n", " # Apply dartboard selection algorithm\n", " selected_texts, selection_scores = greedy_dartsearch(\n", " query_distances,\n", " document_distances,\n", " candidate_texts,\n", " num_results\n", " )\n", " \n", " return selected_texts, selection_scores" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### dartboard retrieval - results on same query, k, and dataset\n", "- As you can see now the top 3 results are not mere repetitions. " ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Context 1:\n", "driven by human activities, particularly the emission of greenhou se gases. \n", "Chapter 2: Causes of Climate Change \n", "Greenhouse Gases \n", "The primary cause of recent climate change is the increase in greenhouse gases in the \n", "atmosphere. Greenhouse gases, such as carbon dioxide (CO2), methane (CH4), and nitrous \n", "oxide (N2O), trap heat from the sun, creating a \"greenhouse effect.\" This effect is essential \n", "for life on Earth, as it keeps the planet warm enough to support life. However, human \n", "activities have intensified this natural process, leading to a warmer climate. \n", "Fossil Fuels \n", "Burning fossil fuels for energy releases large amounts of CO2. This includes coal, oil, and \n", "natural gas used for electricity, heating, and transportation. The industrial revolution marked \n", "the beginning of a significant increase in fossil fuel consumption, which continues to rise \n", "today. \n", "Coal\n", "\n", "\n", "Context 2:\n", "Most of these climate changes are attributed to very small variations in Earth's orbit that \n", "change the amount of solar energy our planet receives. During the Holocene epoch, which \n", "began at the end of the last ice age, human societies f lourished, but the industrial era has seen \n", "unprecedented changes. \n", "Modern Observations \n", "Modern scientific observations indicate a rapid increase in global temperatures, sea levels, \n", "and extreme weather events. The Intergovernmental Panel on Climate Change (IPCC) has \n", "documented these changes extensively. Ice core samples, tree rings, and ocean sediments \n", "provide a historical record that scientists use to understand past climate conditions and \n", "predict future trends. The evidence overwhelmingly shows that recent changes are primarily \n", "driven by human activities, particularly the emission of greenhou se gases. \n", "Chapter 2: Causes of Climate Change \n", "Greenhouse Gases\n", "\n", "\n", "Context 3:\n", "driven by human activities, particularly the emission of greenhou se gases. \n", "Chapter 2: Causes of Climate Change \n", "Greenhouse Gases \n", "The primary cause of recent climate change is the increase in greenhouse gases in the \n", "atmosphere. Greenhouse gases, such as carbon dioxide (CO2), methane (CH4), and nitrous \n", "oxide (N2O), trap heat from the sun, creating a \"greenhouse effect.\" This effect is essential \n", "for life on Earth, as it keeps the planet warm enough to support life. However, human \n", "activities have intensified this natural process, leading to a warmer climate. \n", "Fossil Fuels \n", "Burning fossil fuels for energy releases large amounts of CO2. This includes coal, oil, and \n", "natural gas used for electricity, heating, and transportation. The industrial revolution marked \n", "the beginning of a significant increase in fossil fuel consumption, which continues to rise \n", "today. \n", "Coal\n", "\n", "\n" ] } ], "source": [ "texts,scores=get_context_with_dartboard(test_query,k=3)\n", "show_context(texts)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--dartboard)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.12" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/document_augmentation.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Document Augmentation through Question Generation for Enhanced Retrieval\n", "\n", "## Overview\n", "\n", "This implementation demonstrates a text augmentation technique that leverages additional question generation to improve document retrieval within a vector database. By generating and incorporating various questions related to each text fragment, the system enhances the standard retrieval process, thus increasing the likelihood of finding relevant documents that can be utilized as context for generative question answering.\n", "\n", "## Motivation\n", "\n", "By enriching text fragments with related questions, we aim to significantly enhance the accuracy of identifying the most relevant sections of a document that contain answers to user queries.\n", "\n", "## Prerequisites\n", "\n", "This approach utilizes OpenAI's language models and embeddings. You'll need an OpenAI API key to use this implementation. Make sure you have the required Python packages installed:\n", "\n", "```\n", "pip install langchain openai faiss-cpu PyPDF2 pydantic\n", "```\n", "\n", "## Key Components\n", "\n", "1. **PDF Processing and Text Chunking**: Handling PDF documents and dividing them into manageable text fragments.\n", "2. **Question Augmentation**: Generating relevant questions at both the document and fragment levels using OpenAI's language models.\n", "3. **Vector Store Creation**: Calculating embeddings for documents using OpenAI's embedding model and creating a FAISS vector store.\n", "4. **Retrieval and Answer Generation**: Finding the most relevant document using FAISS and generating answers based on the context provided.\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing\n", "\n", "1. Convert the PDF to a string using PyPDFLoader from LangChain.\n", "2. Split the text into overlapping text documents (text_document) for building context purpose and then each document to overlapping text fragments (text_fragment) for retrieval and semantic search purpose.\n", "\n", "### Document Augmentation\n", "\n", "1. Generate questions at the document or text fragment level using OpenAI's language models.\n", "2. Configure the number of questions to generate using the QUESTIONS_PER_DOCUMENT constant.\n", "\n", "### Vector Store Creation\n", "\n", "1. Use the OpenAIEmbeddings class to compute document embeddings.\n", "2. Create a FAISS vector store from these embeddings.\n", "\n", "### Retrieval and Generation\n", "\n", "1. Retrieve the most relevant document from the FAISS store based on the given query.\n", "2. Use the retrieved document as context for generating answers with OpenAI's language models.\n", "\n", "## Benefits of This Approach\n", "\n", "1. **Enhanced Retrieval Process**: Increases the probability of finding the most relevant FAISS document for a given query.\n", "2. **Flexible Context Adjustment**: Allows for easy adjustment of the context window size for both text documents and fragments.\n", "3. **High-Quality Language Understanding**: Leverages OpenAI's powerful language models for question generation and answer production.\n", "\n", "## Implementation Details\n", "\n", "- The `OpenAIEmbeddingsWrapper` class provides a consistent interface for embedding generation.\n", "- The `generate_questions` function uses OpenAI's chat models to create relevant questions from the text.\n", "- The `process_documents` function handles the core logic of document splitting, question generation, and vector store creation.\n", "- The main execution demonstrates loading a PDF, processing its content, and performing a sample query.\n", "\n", "## Conclusion\n", "\n", "This technique provides a method to improve the quality of information retrieval in vector-based document search systems. By generating additional questions similar to user queries and utilizing OpenAI's advanced language models, it potentially leads to better comprehension and more accurate responses in subsequent tasks, such as question answering.\n", "\n", "## Note on API Usage\n", "\n", "Be aware that this implementation uses OpenAI's API, which may incur costs based on usage. Make sure to monitor your API usage and set appropriate limits in your OpenAI account settings." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu langchain langchain-openai python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import sys\n", "import os\n", "import re\n", "from langchain.docstore.document import Document\n", "from langchain.vectorstores import FAISS\n", "from enum import Enum\n", "from langchain.embeddings.openai import OpenAIEmbeddings\n", "from langchain_openai import ChatOpenAI\n", "from typing import Any, Dict, List, Tuple\n", "\n", "from dotenv import load_dotenv\n", "\n", "load_dotenv()\n", "\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "\n", "from helper_functions import *\n", "\n", "\n", "class QuestionGeneration(Enum):\n", " \"\"\"\n", " Enum class to specify the level of question generation for document processing.\n", "\n", " Attributes:\n", " DOCUMENT_LEVEL (int): Represents question generation at the entire document level.\n", " FRAGMENT_LEVEL (int): Represents question generation at the individual text fragment level.\n", " \"\"\"\n", " DOCUMENT_LEVEL = 1\n", " FRAGMENT_LEVEL = 2\n", "\n", "#Depending on the model, for Mitral 7B it can be max 8000, for Llama 3.1 8B 128k\n", "DOCUMENT_MAX_TOKENS = 4000\n", "DOCUMENT_OVERLAP_TOKENS = 100\n", "\n", "#Embeddings and text similarity calculated on shorter texts\n", "FRAGMENT_MAX_TOKENS = 128\n", "FRAGMENT_OVERLAP_TOKENS = 16\n", "\n", "#Questions generated on document or fragment level\n", "QUESTION_GENERATION = QuestionGeneration.DOCUMENT_LEVEL\n", "#how many questions will be generated for specific document or fragment\n", "QUESTIONS_PER_DOCUMENT = 40" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define classes and functions used by this pipeline" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "class QuestionList(BaseModel):\n", " question_list: List[str] = Field(..., title=\"List of questions generated for the document or fragment\")\n", "\n", "\n", "class OpenAIEmbeddingsWrapper(OpenAIEmbeddings):\n", " \"\"\"\n", " A wrapper class for OpenAI embeddings, providing a similar interface to the original OllamaEmbeddings.\n", " \"\"\"\n", " \n", " def __call__(self, query: str) -> List[float]:\n", " \"\"\"\n", " Allows the instance to be used as a callable to generate an embedding for a query.\n", "\n", " Args:\n", " query (str): The query string to be embedded.\n", "\n", " Returns:\n", " List[float]: The embedding for the query as a list of floats.\n", " \"\"\"\n", " return self.embed_query(query)\n", "\n", "def clean_and_filter_questions(questions: List[str]) -> List[str]:\n", " \"\"\"\n", " Cleans and filters a list of questions.\n", "\n", " Args:\n", " questions (List[str]): A list of questions to be cleaned and filtered.\n", "\n", " Returns:\n", " List[str]: A list of cleaned and filtered questions that end with a question mark.\n", " \"\"\"\n", " cleaned_questions = []\n", " for question in questions:\n", " cleaned_question = re.sub(r'^\\d+\\.\\s*', '', question.strip())\n", " if cleaned_question.endswith('?'):\n", " cleaned_questions.append(cleaned_question)\n", " return cleaned_questions\n", "\n", "def generate_questions(text: str) -> List[str]:\n", " \"\"\"\n", " Generates a list of questions based on the provided text using OpenAI.\n", "\n", " Args:\n", " text (str): The context data from which questions are generated.\n", "\n", " Returns:\n", " List[str]: A list of unique, filtered questions.\n", " \"\"\"\n", " llm = ChatOpenAI(model=\"gpt-4o-mini\", temperature=0)\n", " prompt = PromptTemplate(\n", " input_variables=[\"context\", \"num_questions\"],\n", " template=\"Using the context data: {context}\\n\\nGenerate a list of at least {num_questions} \"\n", " \"possible questions that can be asked about this context. Ensure the questions are \"\n", " \"directly answerable within the context and do not include any answers or headers. \"\n", " \"Separate the questions with a new line character.\"\n", " )\n", " chain = prompt | llm.with_structured_output(QuestionList)\n", " input_data = {\"context\": text, \"num_questions\": QUESTIONS_PER_DOCUMENT}\n", " result = chain.invoke(input_data)\n", " \n", " # Extract the list of questions from the QuestionList object\n", " questions = result.question_list\n", " \n", " filtered_questions = clean_and_filter_questions(questions)\n", " return list(set(filtered_questions))\n", "\n", "def generate_answer(content: str, question: str) -> str:\n", " \"\"\"\n", " Generates an answer to a given question based on the provided context using OpenAI.\n", "\n", " Args:\n", " content (str): The context data used to generate the answer.\n", " question (str): The question for which the answer is generated.\n", "\n", " Returns:\n", " str: The precise answer to the question based on the provided context.\n", " \"\"\"\n", " llm = ChatOpenAI(model=\"gpt-4o-mini\",temperature=0)\n", " prompt = PromptTemplate(\n", " input_variables=[\"context\", \"question\"],\n", " template=\"Using the context data: {context}\\n\\nProvide a brief and precise answer to the question: {question}\"\n", " )\n", " chain = prompt | llm\n", " input_data = {\"context\": content, \"question\": question}\n", " return chain.invoke(input_data)\n", "\n", "def split_document(document: str, chunk_size: int, chunk_overlap: int) -> List[str]:\n", " \"\"\"\n", " Splits a document into smaller chunks of text.\n", "\n", " Args:\n", " document (str): The text of the document to be split.\n", " chunk_size (int): The size of each chunk in terms of the number of tokens.\n", " chunk_overlap (int): The number of overlapping tokens between consecutive chunks.\n", "\n", " Returns:\n", " List[str]: A list of text chunks, where each chunk is a string of the document content.\n", " \"\"\"\n", " tokens = re.findall(r'\\b\\w+\\b', document)\n", " chunks = []\n", " for i in range(0, len(tokens), chunk_size - chunk_overlap):\n", " chunk_tokens = tokens[i:i + chunk_size]\n", " chunks.append(chunk_tokens)\n", " if i + chunk_size >= len(tokens):\n", " break\n", " return [\" \".join(chunk) for chunk in chunks]\n", "\n", "def print_document(comment: str, document: Any) -> None:\n", " \"\"\"\n", " Prints a comment followed by the content of a document.\n", "\n", " Args:\n", " comment (str): The comment or description to print before the document details.\n", " document (Any): The document whose content is to be printed.\n", "\n", " Returns:\n", " None\n", " \"\"\"\n", " print(f'{comment} (type: {document.metadata[\"type\"]}, index: {document.metadata[\"index\"]}): {document.page_content}')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example usage\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Initialize OpenAIEmbeddings\n", "embeddings = OpenAIEmbeddingsWrapper()\n", "\n", "# Example document\n", "example_text = \"This is an example document. It contains information about various topics.\"\n", "\n", "# Generate questions\n", "questions = generate_questions(example_text)\n", "print(\"Generated Questions:\")\n", "for q in questions:\n", " print(f\"- {q}\")\n", "\n", "# Generate an answer\n", "sample_question = questions[0] if questions else \"What is this document about?\"\n", "answer = generate_answer(example_text, sample_question)\n", "print(f\"\\nQuestion: {sample_question}\")\n", "print(f\"Answer: {answer}\")\n", "\n", "# Split document\n", "chunks = split_document(example_text, chunk_size=10, chunk_overlap=2)\n", "print(\"\\nDocument Chunks:\")\n", "for i, chunk in enumerate(chunks):\n", " print(f\"Chunk {i + 1}: {chunk}\")\n", "\n", "# Example of using OpenAIEmbeddings\n", "doc_embedding = embeddings.embed_documents([example_text])\n", "query_embedding = embeddings.embed_query(\"What is the main topic?\")\n", "print(\"\\nDocument Embedding (first 5 elements):\", doc_embedding[0][:5])\n", "print(\"Query Embedding (first 5 elements):\", query_embedding[:5])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Main pipeline" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "def process_documents(content: str, embedding_model: OpenAIEmbeddings):\n", " \"\"\"\n", " Process the document content, split it into fragments, generate questions,\n", " create a FAISS vector store, and return a retriever.\n", "\n", " Args:\n", " content (str): The content of the document to process.\n", " embedding_model (OpenAIEmbeddings): The embedding model to use for vectorization.\n", "\n", " Returns:\n", " VectorStoreRetriever: A retriever for the most relevant FAISS document.\n", " \"\"\"\n", " # Split the whole text content into text documents\n", " text_documents = split_document(content, DOCUMENT_MAX_TOKENS, DOCUMENT_OVERLAP_TOKENS)\n", " print(f'Text content split into: {len(text_documents)} documents')\n", "\n", " documents = []\n", " counter = 0\n", " for i, text_document in enumerate(text_documents):\n", " text_fragments = split_document(text_document, FRAGMENT_MAX_TOKENS, FRAGMENT_OVERLAP_TOKENS)\n", " print(f'Text document {i} - split into: {len(text_fragments)} fragments')\n", " \n", " for j, text_fragment in enumerate(text_fragments):\n", " documents.append(Document(\n", " page_content=text_fragment,\n", " metadata={\"type\": \"ORIGINAL\", \"index\": counter, \"text\": text_document}\n", " ))\n", " counter += 1\n", " \n", " if QUESTION_GENERATION == QuestionGeneration.FRAGMENT_LEVEL:\n", " questions = generate_questions(text_fragment)\n", " documents.extend([\n", " Document(page_content=question, metadata={\"type\": \"AUGMENTED\", \"index\": counter + idx, \"text\": text_document})\n", " for idx, question in enumerate(questions)\n", " ])\n", " counter += len(questions)\n", " print(f'Text document {i} Text fragment {j} - generated: {len(questions)} questions')\n", " \n", " if QUESTION_GENERATION == QuestionGeneration.DOCUMENT_LEVEL:\n", " questions = generate_questions(text_document)\n", " documents.extend([\n", " Document(page_content=question, metadata={\"type\": \"AUGMENTED\", \"index\": counter + idx, \"text\": text_document})\n", " for idx, question in enumerate(questions)\n", " ])\n", " counter += len(questions)\n", " print(f'Text document {i} - generated: {len(questions)} questions')\n", "\n", " for document in documents:\n", " print_document(\"Dataset\", document)\n", "\n", " print(f'Creating store, calculating embeddings for {len(documents)} FAISS documents')\n", " vectorstore = FAISS.from_documents(documents, embedding_model)\n", "\n", " print(\"Creating retriever returning the most relevant FAISS document\")\n", " return vectorstore.as_retriever(search_kwargs={\"k\": 1})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "\n", "# Load sample PDF document to string variable\n", "path = \"data/Understanding_Climate_Change.pdf\"\n", "content = read_pdf_to_string(path)\n", "\n", "# Instantiate OpenAI Embeddings class that will be used by FAISS\n", "embedding_model = OpenAIEmbeddings()\n", "\n", "# Process documents and create retriever\n", "document_query_retriever = process_documents(content, embedding_model)\n", "\n", "# Example usage of the retriever\n", "query = \"What is climate change?\"\n", "retrieved_docs = document_query_retriever.get_relevant_documents(query)\n", "print(f\"\\nQuery: {query}\")\n", "print(f\"Retrieved document: {retrieved_docs[0].page_content}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Find the most relevant FAISS document in the store. In most cases, this will be an augmented question rather than the original text document." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "query = \"How do freshwater ecosystems change due to alterations in climatic factors?\"\n", "print (f'Question:{os.linesep}{query}{os.linesep}')\n", "retrieved_documents = document_query_retriever.invoke(query)\n", "\n", "for doc in retrieved_documents:\n", " print_document(\"Relevant fragment retrieved\", doc)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Find the parent text document and use it as context for the generative model to generate an answer to the question." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "context = doc.metadata['text']\n", "print (f'{os.linesep}Context:{os.linesep}{context}')\n", "answer = generate_answer(context, query)\n", "print(f'{os.linesep}Answer:{os.linesep}{answer}')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--document-augmentation)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/explainable_retrieval.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Explainable Retrieval in Document Search\n", "\n", "## Overview\n", "\n", "This code implements an Explainable Retriever, a system that not only retrieves relevant documents based on a query but also provides explanations for why each retrieved document is relevant. It combines vector-based similarity search with natural language explanations, enhancing the transparency and interpretability of the retrieval process.\n", "\n", "## Motivation\n", "\n", "Traditional document retrieval systems often work as black boxes, providing results without explaining why they were chosen. This lack of transparency can be problematic in scenarios where understanding the reasoning behind the results is crucial. The Explainable Retriever addresses this by offering insights into the relevance of each retrieved document.\n", "\n", "## Key Components\n", "\n", "1. Vector store creation from input texts\n", "2. Base retriever using FAISS for efficient similarity search\n", "3. Language model (LLM) for generating explanations\n", "4. Custom ExplainableRetriever class that combines retrieval and explanation generation\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing and Vector Store Creation\n", "\n", "1. Input texts are converted into embeddings using OpenAI's embedding model.\n", "2. A FAISS vector store is created from these embeddings for efficient similarity search.\n", "\n", "### Retriever Setup\n", "\n", "1. A base retriever is created from the vector store, configured to return the top 5 most similar documents.\n", "\n", "### Explanation Generation\n", "\n", "1. An LLM (GPT-4) is used to generate explanations.\n", "2. A custom prompt template is defined to guide the LLM in explaining the relevance of retrieved documents.\n", "\n", "### ExplainableRetriever Class\n", "\n", "1. Combines the base retriever and explanation generation into a single interface.\n", "2. The `retrieve_and_explain` method:\n", " - Retrieves relevant documents using the base retriever.\n", " - For each retrieved document, generates an explanation of its relevance to the query.\n", " - Returns a list of dictionaries containing both the document content and its explanation.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Transparency: Users can understand why specific documents were retrieved.\n", "2. Trust: Explanations build user confidence in the system's results.\n", "3. Learning: Users can gain insights into the relationships between queries and documents.\n", "4. Debugging: Easier to identify and correct issues in the retrieval process.\n", "5. Customization: The explanation prompt can be tailored for different use cases or domains.\n", "\n", "## Conclusion\n", "\n", "The Explainable Retriever represents a significant step towards more interpretable and trustworthy information retrieval systems. By providing natural language explanations alongside retrieved documents, it bridges the gap between powerful vector-based search techniques and human understanding. This approach has potential applications in various fields where the reasoning behind information retrieval is as important as the retrieved information itself, such as legal research, medical information systems, and educational tools." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the explainable retriever class " ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "class ExplainableRetriever:\n", " def __init__(self, texts):\n", " self.embeddings = OpenAIEmbeddings()\n", "\n", " self.vectorstore = FAISS.from_texts(texts, self.embeddings)\n", " self.llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o-mini\", max_tokens=4000)\n", "\n", " \n", " # Create a base retriever\n", " self.retriever = self.vectorstore.as_retriever(search_kwargs={\"k\": 5})\n", " \n", " # Create an explanation chain\n", " explain_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"context\"],\n", " template=\"\"\"\n", " Analyze the relationship between the following query and the retrieved context.\n", " Explain why this context is relevant to the query and how it might help answer the query.\n", " \n", " Query: {query}\n", " \n", " Context: {context}\n", " \n", " Explanation:\n", " \"\"\"\n", " )\n", " self.explain_chain = explain_prompt | self.llm\n", "\n", " def retrieve_and_explain(self, query):\n", " # Retrieve relevant documents\n", " docs = self.retriever.get_relevant_documents(query)\n", " \n", " explained_results = []\n", " \n", " for doc in docs:\n", " # Generate explanation\n", " input_data = {\"query\": query, \"context\": doc.page_content}\n", " explanation = self.explain_chain.invoke(input_data).content\n", " \n", " explained_results.append({\n", " \"content\": doc.page_content,\n", " \"explanation\": explanation\n", " })\n", " \n", " return explained_results\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a mock example and explainable retriever instance" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "\n", "# Usage\n", "texts = [\n", " \"The sky is blue because of the way sunlight interacts with the atmosphere.\",\n", " \"Photosynthesis is the process by which plants use sunlight to produce energy.\",\n", " \"Global warming is caused by the increase of greenhouse gases in Earth's atmosphere.\"\n", "]\n", "\n", "explainable_retriever = ExplainableRetriever(texts)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Show the results" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "query = \"Why is the sky blue?\"\n", "results = explainable_retriever.retrieve_and_explain(query)\n", "\n", "for i, result in enumerate(results, 1):\n", " print(f\"Result {i}:\")\n", " print(f\"Content: {result['content']}\")\n", " print(f\"Explanation: {result['explanation']}\")\n", " print()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--explainable-retrieval)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/fusion_retrieval.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Fusion Retrieval in Document Search\n", "\n", "## Overview\n", "\n", "This code implements a Fusion Retrieval system that combines vector-based similarity search with keyword-based BM25 retrieval. The approach aims to leverage the strengths of both methods to improve the overall quality and relevance of document retrieval.\n", "\n", "## Motivation\n", "\n", "Traditional retrieval methods often rely on either semantic understanding (vector-based) or keyword matching (BM25). Each approach has its strengths and weaknesses. Fusion retrieval aims to combine these methods to create a more robust and accurate retrieval system that can handle a wider range of queries effectively.\n", "\n", "## Key Components\n", "\n", "1. PDF processing and text chunking\n", "2. Vector store creation using FAISS and OpenAI embeddings\n", "3. BM25 index creation for keyword-based retrieval\n", "4. Custom fusion retrieval function that combines both methods\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing\n", "\n", "1. The PDF is loaded and split into chunks using RecursiveCharacterTextSplitter.\n", "2. Chunks are cleaned by replacing 't' with spaces (likely addressing a specific formatting issue).\n", "\n", "### Vector Store Creation\n", "\n", "1. OpenAI embeddings are used to create vector representations of the text chunks.\n", "2. A FAISS vector store is created from these embeddings for efficient similarity search.\n", "\n", "### BM25 Index Creation\n", "\n", "1. A BM25 index is created from the same text chunks used for the vector store.\n", "2. This allows for keyword-based retrieval alongside the vector-based method.\n", "\n", "### Fusion Retrieval Function\n", "\n", "The `fusion_retrieval` function is the core of this implementation:\n", "\n", "1. It takes a query and performs both vector-based and BM25-based retrieval.\n", "2. Scores from both methods are normalized to a common scale.\n", "3. A weighted combination of these scores is computed (controlled by the `alpha` parameter).\n", "4. Documents are ranked based on the combined scores, and the top-k results are returned.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Improved Retrieval Quality: By combining semantic and keyword-based search, the system can capture both conceptual similarity and exact keyword matches.\n", "2. Flexibility: The `alpha` parameter allows for adjusting the balance between vector and keyword search based on specific use cases or query types.\n", "3. Robustness: The combined approach can handle a wider range of queries effectively, mitigating weaknesses of individual methods.\n", "4. Customizability: The system can be easily adapted to use different vector stores or keyword-based retrieval methods.\n", "\n", "## Conclusion\n", "\n", "Fusion retrieval represents a powerful approach to document search that combines the strengths of semantic understanding and keyword matching. By leveraging both vector-based and BM25 retrieval methods, it offers a more comprehensive and flexible solution for information retrieval tasks. This approach has potential applications in various fields where both conceptual similarity and keyword relevance are important, such as academic research, legal document search, or general-purpose search engines." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"Fusion\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain numpy python-dotenv rank-bm25" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from langchain.docstore.document import Document\n", "\n", "from typing import List\n", "from rank_bm25 import BM25Okapi\n", "import numpy as np\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define document path" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Encode the pdf to vector store and return split document from the step before to create BM25 instance" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "def encode_pdf_and_get_split_documents(path, chunk_size=1000, chunk_overlap=200):\n", " \"\"\"\n", " Encodes a PDF book into a vector store using OpenAI embeddings.\n", "\n", " Args:\n", " path: The path to the PDF file.\n", " chunk_size: The desired size of each text chunk.\n", " chunk_overlap: The amount of overlap between consecutive chunks.\n", "\n", " Returns:\n", " A FAISS vector store containing the encoded book content.\n", " \"\"\"\n", "\n", " # Load PDF documents\n", " loader = PyPDFLoader(path)\n", " documents = loader.load()\n", "\n", " # Split documents into chunks\n", " text_splitter = RecursiveCharacterTextSplitter(\n", " chunk_size=chunk_size, chunk_overlap=chunk_overlap, length_function=len\n", " )\n", " texts = text_splitter.split_documents(documents)\n", " cleaned_texts = replace_t_with_space(texts)\n", "\n", " # Create embeddings and vector store\n", " embeddings = OpenAIEmbeddings()\n", " vectorstore = FAISS.from_documents(cleaned_texts, embeddings)\n", "\n", " return vectorstore, cleaned_texts" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create vectorstore and get the chunked documents" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "vectorstore, cleaned_texts = encode_pdf_and_get_split_documents(path)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a bm25 index for retrieving documents by keywords" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "def create_bm25_index(documents: List[Document]) -> BM25Okapi:\n", " \"\"\"\n", " Create a BM25 index from the given documents.\n", "\n", " BM25 (Best Matching 25) is a ranking function used in information retrieval.\n", " It's based on the probabilistic retrieval framework and is an improvement over TF-IDF.\n", "\n", " Args:\n", " documents (List[Document]): List of documents to index.\n", "\n", " Returns:\n", " BM25Okapi: An index that can be used for BM25 scoring.\n", " \"\"\"\n", " # Tokenize each document by splitting on whitespace\n", " # This is a simple approach and could be improved with more sophisticated tokenization\n", " tokenized_docs = [doc.page_content.split() for doc in documents]\n", " return BM25Okapi(tokenized_docs)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "bm25 = create_bm25_index(cleaned_texts) # Create BM25 index from the cleaned texts (chunks)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define a function that retrieves both semantically and by keyword, normalizes the scores and gets the top k documents" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "def fusion_retrieval(vectorstore, bm25, query: str, k: int = 5, alpha: float = 0.5) -> List[Document]:\n", " \"\"\"\n", " Perform fusion retrieval combining keyword-based (BM25) and vector-based search.\n", "\n", " Args:\n", " vectorstore (VectorStore): The vectorstore containing the documents.\n", " bm25 (BM25Okapi): Pre-computed BM25 index.\n", " query (str): The query string.\n", " k (int): The number of documents to retrieve.\n", " alpha (float): The weight for vector search scores (1-alpha will be the weight for BM25 scores).\n", "\n", " Returns:\n", " List[Document]: The top k documents based on the combined scores.\n", " \"\"\"\n", " \n", " epsilon = 1e-8\n", "\n", " # Step 1: Get all documents from the vectorstore\n", " all_docs = vectorstore.similarity_search(\"\", k=vectorstore.index.ntotal)\n", "\n", " # Step 2: Perform BM25 search\n", " bm25_scores = bm25.get_scores(query.split())\n", "\n", " # Step 3: Perform vector search\n", " vector_results = vectorstore.similarity_search_with_score(query, k=len(all_docs))\n", " \n", " # Step 4: Normalize scores\n", " vector_scores = np.array([score for _, score in vector_results])\n", " vector_scores = 1 - (vector_scores - np.min(vector_scores)) / (np.max(vector_scores) - np.min(vector_scores) + epsilon)\n", "\n", " bm25_scores = (bm25_scores - np.min(bm25_scores)) / (np.max(bm25_scores) - np.min(bm25_scores) + epsilon)\n", "\n", " # Step 5: Combine scores\n", " combined_scores = alpha * vector_scores + (1 - alpha) * bm25_scores \n", "\n", " # Step 6: Rank documents\n", " sorted_indices = np.argsort(combined_scores)[::-1]\n", " \n", " # Step 7: Return top k documents\n", " return [all_docs[i] for i in sorted_indices[:k]]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Use Case example" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "# Query\n", "query = \"What are the impacts of climate change on the environment?\"\n", "\n", "# Perform fusion retrieval\n", "top_docs = fusion_retrieval(vectorstore, bm25, query, k=5, alpha=0.5)\n", "docs_content = [doc.page_content for doc in top_docs]\n", "show_context(docs_content)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--fusion-retrieval)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/fusion_retrieval_with_llamaindex.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Fusion Retrieval in Document Search\n", "\n", "## Overview\n", "\n", "This code implements a Fusion Retrieval system that combines vector-based similarity search with keyword-based BM25 retrieval. The approach aims to leverage the strengths of both methods to improve the overall quality and relevance of document retrieval.\n", "\n", "## Motivation\n", "\n", "Traditional retrieval methods often rely on either semantic understanding (vector-based) or keyword matching (BM25). Each approach has its strengths and weaknesses. Fusion retrieval aims to combine these methods to create a more robust and accurate retrieval system that can handle a wider range of queries effectively.\n", "\n", "## Key Components\n", "\n", "1. PDF processing and text chunking\n", "2. Vector store creation using FAISS and OpenAI embeddings\n", "3. BM25 index creation for keyword-based retrieval\n", "4. Fusioning BM25 and vector search results for better retrieval\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing\n", "\n", "1. The PDF is loaded and split into chunks using SentenceSplitter.\n", "2. Chunks are cleaned by replacing 't' with spaces and newline cleaning (likely addressing a specific formatting issue).\n", "\n", "### Vector Store Creation\n", "\n", "1. OpenAI embeddings are used to create vector representations of the text chunks.\n", "2. A FAISS vector store is created from these embeddings for efficient similarity search.\n", "\n", "### BM25 Index Creation\n", "\n", "1. A BM25 index is created from the same text chunks used for the vector store.\n", "2. This allows for keyword-based retrieval alongside the vector-based method.\n", "\n", "### Query Fusion Retrieval\n", "\n", "After creation of both indexes Query Fusion Retrieval combines them to enable a hybrid retrieval\n", "\n", "## Benefits of this Approach\n", "\n", "1. Improved Retrieval Quality: By combining semantic and keyword-based search, the system can capture both conceptual similarity and exact keyword matches.\n", "2. Flexibility: The `retriever_weights` parameter allows for adjusting the balance between vector and keyword search based on specific use cases or query types.\n", "3. Robustness: The combined approach can handle a wider range of queries effectively, mitigating weaknesses of individual methods.\n", "4. Customizability: The system can be easily adapted to use different vector stores or keyword-based retrieval methods.\n", "\n", "## Conclusion\n", "\n", "Fusion retrieval represents a powerful approach to document search that combines the strengths of semantic understanding and keyword matching. By leveraging both vector-based and BM25 retrieval methods, it offers a more comprehensive and flexible solution for information retrieval tasks. This approach has potential applications in various fields where both conceptual similarity and keyword relevance are important, such as academic research, legal document search, or general-purpose search engines." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu llama-index python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from typing import List\n", "from llama_index.core import Settings\n", "from llama_index.core.readers import SimpleDirectoryReader\n", "from llama_index.core.node_parser import SentenceSplitter\n", "from llama_index.core.ingestion import IngestionPipeline\n", "from llama_index.core.schema import BaseNode, TransformComponent\n", "from llama_index.vector_stores.faiss import FaissVectorStore\n", "from llama_index.core import VectorStoreIndex\n", "from llama_index.llms.openai import OpenAI\n", "from llama_index.embeddings.openai import OpenAIEmbedding\n", "from llama_index.legacy.retrievers.bm25_retriever import BM25Retriever\n", "from llama_index.core.retrievers import QueryFusionRetriever\n", "import faiss\n", "\n", "# Original path append replaced for Colab compatibility\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "\n", "# Llamaindex global settings for llm and embeddings\n", "EMBED_DIMENSION=512\n", "Settings.llm = OpenAI(model=\"gpt-3.5-turbo\", temperature=0.1)\n", "Settings.embed_model = OpenAIEmbedding(model=\"text-embedding-3-small\", dimensions=EMBED_DIMENSION)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Read Docs" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "path = \"data/\"\n", "reader = SimpleDirectoryReader(input_dir=path, required_exts=['.pdf'])\n", "documents = reader.load_data()\n", "print(documents[0])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create Vector Store" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Create FaisVectorStore to store embeddings\n", "fais_index = faiss.IndexFlatL2(EMBED_DIMENSION)\n", "vector_store = FaissVectorStore(faiss_index=fais_index)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Text Cleaner Transformation" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "class TextCleaner(TransformComponent):\n", " \"\"\"\n", " Transformation to be used within the ingestion pipeline.\n", " Cleans clutters from texts.\n", " \"\"\"\n", " def __call__(self, nodes, **kwargs) -> List[BaseNode]:\n", " \n", " for node in nodes:\n", " node.text = node.text.replace('\\t', ' ') # Replace tabs with spaces\n", " node.text = node.text.replace(' \\n', ' ') # Replace paragprah seperator with spacaes\n", " \n", " return nodes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Ingestion Pipeline" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Pipeline instantiation with: \n", "# node parser, custom transformer, vector store and documents\n", "pipeline = IngestionPipeline(\n", " transformations=[\n", " SentenceSplitter(),\n", " TextCleaner()\n", " ],\n", " vector_store=vector_store,\n", " documents=documents\n", ")\n", "\n", "# Run the pipeline to get nodes\n", "nodes = pipeline.run()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Retrievers" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### BM25 Retriever" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "bm25_retriever = BM25Retriever.from_defaults(\n", " nodes=nodes,\n", " similarity_top_k=2,\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Vector Retriever" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "index = VectorStoreIndex(nodes)\n", "vector_retriever = index.as_retriever(similarity_top_k=2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Fusing Both Retrievers" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "retriever = QueryFusionRetriever(\n", " retrievers=[\n", " vector_retriever,\n", " bm25_retriever\n", " ],\n", " retriever_weights=[\n", " 0.6, # vector retriever weight\n", " 0.4 # BM25 retriever weight\n", " ],\n", " num_queries=1, \n", " mode='dist_based_score',\n", " use_async=False\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "About parameters\n", "\n", "1. `num_queries`: Query Fusion Retriever not only combines retrievers but also can genereate multiple questions from a given query. This parameter controls how many total queries will be passed to the retrievers. Therefore setting it to 1 disables query generation and the final retriever only uses the initial query.\n", "2. `mode`: There are 4 options for this parameter. \n", " - **reciprocal_rerank**: Applies reciporical ranking. (Since there is no normalization, this method is not suitable for this kind of application. Beacuse different retrirevers will return score scales)\n", " - **relative_score**: Applies MinMax based on the min and max scores among all the nodes. Then scaled to be between 0 and 1. Finally scores are weighted by the relative retrievers based on `retriever_weights`. \n", " ```math\n", " min\\_score = min(scores)\n", " \\\\ max\\_score = max(scores)\n", " ```\n", " - **dist_based_score**: Only difference from `relative_score` is the MinMax sclaing is based on mean and std of the scores. Scaling and weighting is the same.\n", " ```math\n", " min\\_score = mean\\_score - 3 * std\\_dev\n", " \\\\ max\\_score = mean\\_score + 3 * std\\_dev\n", " ```\n", " - **simple**: This method is simply takes the max score of each chunk. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Use Case example" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Query\n", "query = \"What are the impacts of climate change on the environment?\"\n", "\n", "# Perform fusion retrieval\n", "response = retriever.retrieve(query)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Print Final Retrieved Nodes with Scores " ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "for node in response:\n", " print(f\"Node Score: {node.score:.2}\")\n", " print(f\"Node Content: {node.text}\")\n", " print(\"-\"*100)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--fusion-retrieval-with-llamaindex)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.9" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/graph_rag.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# GraphRAG: Graph-Enhanced Retrieval-Augmented Generation\n", "\n", "## Overview\n", "\n", "GraphRAG is an advanced question-answering system that combines the power of graph-based knowledge representation with retrieval-augmented generation. It processes input documents to create a rich knowledge graph, which is then used to enhance the retrieval and generation of answers to user queries. The system leverages natural language processing, machine learning, and graph theory to provide more accurate and contextually relevant responses.\n", "\n", "## Motivation\n", "\n", "Traditional retrieval-augmented generation systems often struggle with maintaining context over long documents and making connections between related pieces of information. GraphRAG addresses these limitations by:\n", "\n", "1. Representing knowledge as an interconnected graph, allowing for better preservation of relationships between concepts.\n", "2. Enabling more intelligent traversal of information during the query process.\n", "3. Providing a visual representation of how information is connected and accessed during the answering process.\n", "\n", "## Key Components\n", "\n", "1. **DocumentProcessor**: Handles the initial processing of input documents, creating text chunks and embeddings.\n", "\n", "2. **KnowledgeGraph**: Constructs a graph representation of the processed documents, where nodes represent text chunks and edges represent relationships between them.\n", "\n", "3. **QueryEngine**: Manages the process of answering user queries by leveraging the knowledge graph and vector store.\n", "\n", "4. **Visualizer**: Creates a visual representation of the graph and the traversal path taken to answer a query.\n", "\n", "## Method Details\n", "\n", "1. **Document Processing**:\n", " - Input documents are split into manageable chunks.\n", " - Each chunk is embedded using a language model.\n", " - A vector store is created from these embeddings for efficient similarity search.\n", "\n", "2. **Knowledge Graph Construction**:\n", " - Graph nodes are created for each text chunk.\n", " - Concepts are extracted from each chunk using a combination of NLP techniques and language models.\n", " - Extracted concepts are lemmatized to improve matching.\n", " - Edges are added between nodes based on semantic similarity and shared concepts.\n", " - Edge weights are calculated to represent the strength of relationships.\n", "\n", "3. **Query Processing**:\n", " - The user query is embedded and used to retrieve relevant documents from the vector store.\n", " - A priority queue is initialized with the nodes corresponding to the most relevant documents.\n", " - The system employs a Dijkstra-like algorithm to traverse the knowledge graph:\n", " * Nodes are explored in order of their priority (strength of connection to the query).\n", " * For each explored node:\n", " - Its content is added to the context.\n", " - The system checks if the current context provides a complete answer.\n", " - If the answer is incomplete:\n", " * The node's concepts are processed and added to a set of visited concepts.\n", " * Neighboring nodes are explored, with their priorities updated based on edge weights.\n", " * Nodes are added to the priority queue if a stronger connection is found.\n", " - This process continues until a complete answer is found or the priority queue is exhausted.\n", " - If no complete answer is found after traversing the graph, the system generates a final answer using the accumulated context and a large language model.\n", "\n", "4. **Visualization**:\n", " - The knowledge graph is visualized with nodes representing text chunks and edges representing relationships.\n", " - Edge colors indicate the strength of relationships (weights).\n", " - The traversal path taken to answer a query is highlighted with curved, dashed arrows.\n", " - Start and end nodes of the traversal are distinctly colored for easy identification.\n", "\n", "## Benefits of This Approach\n", "\n", "1. **Improved Context Awareness**: By representing knowledge as a graph, the system can maintain better context and make connections across different parts of the input documents.\n", "\n", "2. **Enhanced Retrieval**: The graph structure allows for more intelligent retrieval of information, going beyond simple keyword matching.\n", "\n", "3. **Explainable Results**: The visualization of the graph and traversal path provides insight into how the system arrived at its answer, improving transparency and trust.\n", "\n", "4. **Flexible Knowledge Representation**: The graph structure can easily incorporate new information and relationships as they become available.\n", "\n", "5. **Efficient Information Traversal**: The weighted edges in the graph allow the system to prioritize the most relevant information pathways when answering queries.\n", "\n", "## Conclusion\n", "\n", "GraphRAG represents a significant advancement in retrieval-augmented generation systems. By incorporating a graph-based knowledge representation and intelligent traversal mechanisms, it offers improved context awareness, more accurate retrieval, and enhanced explainability. The system's ability to visualize its decision-making process provides valuable insights into its operation, making it a powerful tool for both end-users and developers. As natural language processing and graph-based AI continue to evolve, systems like GraphRAG pave the way for more sophisticated and capable question-answering technologies." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"graph\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu futures langchain langchain-openai matplotlib networkx nltk numpy python-dotenv scikit-learn spacy tqdm" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "c:\\Users\\N7\\PycharmProjects\\llm_tasks\\RAG_TECHNIQUES\\.venv\\Lib\\site-packages\\deepeval\\__init__.py:45: UserWarning: You are using deepeval version 0.21.73, however version 0.21.74 is available. You should consider upgrading via the \"pip install --upgrade deepeval\" command.\n", " warnings.warn(\n" ] }, { "data": { "text/plain": [ "True" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import networkx as nx\n", "from langchain.vectorstores import FAISS\n", "from langchain.text_splitter import RecursiveCharacterTextSplitter\n", "from langchain.prompts import PromptTemplate\n", "from langchain.retrievers import ContextualCompressionRetriever\n", "from langchain.retrievers.document_compressors import LLMChainExtractor\n", "from langchain.callbacks import get_openai_callback\n", "\n", "from sklearn.metrics.pairwise import cosine_similarity\n", "import matplotlib.pyplot as plt\n", "import matplotlib.patches as patches\n", "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from langchain_openai import ChatOpenAI\n", "from typing import List, Tuple, Dict\n", "from nltk.stem import WordNetLemmatizer\n", "from nltk.tokenize import word_tokenize\n", "import nltk\n", "import spacy\n", "import heapq\n", "\n", "\n", "from concurrent.futures import ThreadPoolExecutor, as_completed\n", "from tqdm import tqdm\n", "import numpy as np\n", "\n", "from spacy.cli import download\n", "from spacy.lang.en import English\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "os.environ[\"KMP_DUPLICATE_LIB_OK\"]=\"TRUE\"\n", "\n", "nltk.download('punkt', quiet=True)\n", "nltk.download('wordnet', quiet=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the document processor class" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# Define the DocumentProcessor class\n", "class DocumentProcessor:\n", " def __init__(self):\n", " \"\"\"\n", " Initializes the DocumentProcessor with a text splitter and OpenAI embeddings.\n", " \n", " Attributes:\n", " - text_splitter: An instance of RecursiveCharacterTextSplitter with specified chunk size and overlap.\n", " - embeddings: An instance of OpenAIEmbeddings used for embedding documents.\n", " \"\"\"\n", " self.text_splitter = RecursiveCharacterTextSplitter(chunk_size=1000, chunk_overlap=200)\n", " self.embeddings = OpenAIEmbeddings()\n", "\n", " def process_documents(self, documents):\n", " \"\"\"\n", " Processes a list of documents by splitting them into smaller chunks and creating a vector store.\n", " \n", " Args:\n", " - documents (list of str): A list of documents to be processed.\n", " \n", " Returns:\n", " - tuple: A tuple containing:\n", " - splits (list of str): The list of split document chunks.\n", " - vector_store (FAISS): A FAISS vector store created from the split document chunks and their embeddings.\n", " \"\"\"\n", " splits = self.text_splitter.split_documents(documents)\n", " vector_store = FAISS.from_documents(splits, self.embeddings)\n", " return splits, vector_store\n", "\n", " def create_embeddings_batch(self, texts, batch_size=32):\n", " \"\"\"\n", " Creates embeddings for a list of texts in batches.\n", " \n", " Args:\n", " - texts (list of str): A list of texts to be embedded.\n", " - batch_size (int, optional): The number of texts to process in each batch. Default is 32.\n", " \n", " Returns:\n", " - numpy.ndarray: An array of embeddings for the input texts.\n", " \"\"\"\n", " embeddings = []\n", " for i in range(0, len(texts), batch_size):\n", " batch = texts[i:i+batch_size]\n", " batch_embeddings = self.embeddings.embed_documents(batch)\n", " embeddings.extend(batch_embeddings)\n", " return np.array(embeddings)\n", "\n", " def compute_similarity_matrix(self, embeddings):\n", " \"\"\"\n", " Computes a cosine similarity matrix for a given set of embeddings.\n", " \n", " Args:\n", " - embeddings (numpy.ndarray): An array of embeddings.\n", " \n", " Returns:\n", " - numpy.ndarray: A cosine similarity matrix for the input embeddings.\n", " \"\"\"\n", " return cosine_similarity(embeddings)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the knowledge graph class" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# Define the Concepts class\n", "class Concepts(BaseModel):\n", " concepts_list: List[str] = Field(description=\"List of concepts\")\n", "\n", "# Define the KnowledgeGraph class\n", "class KnowledgeGraph:\n", " def __init__(self):\n", " \"\"\"\n", " Initializes the KnowledgeGraph with a graph, lemmatizer, and NLP model.\n", " \n", " Attributes:\n", " - graph: An instance of a networkx Graph.\n", " - lemmatizer: An instance of WordNetLemmatizer.\n", " - concept_cache: A dictionary to cache extracted concepts.\n", " - nlp: An instance of a spaCy NLP model.\n", " - edges_threshold: A float value that sets the threshold for adding edges based on similarity.\n", " \"\"\"\n", " self.graph = nx.Graph()\n", " self.lemmatizer = WordNetLemmatizer()\n", " self.concept_cache = {}\n", " self.nlp = self._load_spacy_model()\n", " self.edges_threshold = 0.8\n", "\n", " def build_graph(self, splits, llm, embedding_model):\n", " \"\"\"\n", " Builds the knowledge graph by adding nodes, creating embeddings, extracting concepts, and adding edges.\n", " \n", " Args:\n", " - splits (list): A list of document splits.\n", " - llm: An instance of a large language model.\n", " - embedding_model: An instance of an embedding model.\n", " \n", " Returns:\n", " - None\n", " \"\"\"\n", " self._add_nodes(splits)\n", " embeddings = self._create_embeddings(splits, embedding_model)\n", " self._extract_concepts(splits, llm)\n", " self._add_edges(embeddings)\n", "\n", " def _add_nodes(self, splits):\n", " \"\"\"\n", " Adds nodes to the graph from the document splits.\n", " \n", " Args:\n", " - splits (list): A list of document splits.\n", " \n", " Returns:\n", " - None\n", " \"\"\"\n", " for i, split in enumerate(splits):\n", " self.graph.add_node(i, content=split.page_content)\n", "\n", " def _create_embeddings(self, splits, embedding_model):\n", " \"\"\"\n", " Creates embeddings for the document splits using the embedding model.\n", " \n", " Args:\n", " - splits (list): A list of document splits.\n", " - embedding_model: An instance of an embedding model.\n", " \n", " Returns:\n", " - numpy.ndarray: An array of embeddings for the document splits.\n", " \"\"\"\n", " texts = [split.page_content for split in splits]\n", " return embedding_model.embed_documents(texts)\n", "\n", " def _compute_similarities(self, embeddings):\n", " \"\"\"\n", " Computes the cosine similarity matrix for the embeddings.\n", " \n", " Args:\n", " - embeddings (numpy.ndarray): An array of embeddings.\n", " \n", " Returns:\n", " - numpy.ndarray: A cosine similarity matrix for the embeddings.\n", " \"\"\"\n", " return cosine_similarity(embeddings)\n", "\n", " def _load_spacy_model(self):\n", " \"\"\"\n", " Loads the spaCy NLP model, downloading it if necessary.\n", " \n", " Args:\n", " - None\n", " \n", " Returns:\n", " - spacy.Language: An instance of a spaCy NLP model.\n", " \"\"\"\n", " try:\n", " return spacy.load(\"en_core_web_sm\")\n", " except OSError:\n", " print(\"Downloading spaCy model...\")\n", " download(\"en_core_web_sm\")\n", " return spacy.load(\"en_core_web_sm\")\n", "\n", " def _extract_concepts_and_entities(self, content, llm):\n", " \"\"\"\n", " Extracts concepts and named entities from the content using spaCy and a large language model.\n", " \n", " Args:\n", " - content (str): The content from which to extract concepts and entities.\n", " - llm: An instance of a large language model.\n", " \n", " Returns:\n", " - list: A list of extracted concepts and entities.\n", " \"\"\"\n", " if content in self.concept_cache:\n", " return self.concept_cache[content]\n", " \n", " # Extract named entities using spaCy\n", " doc = self.nlp(content)\n", " named_entities = [ent.text for ent in doc.ents if ent.label_ in [\"PERSON\", \"ORG\", \"GPE\", \"WORK_OF_ART\"]]\n", " \n", " # Extract general concepts using LLM\n", " concept_extraction_prompt = PromptTemplate(\n", " input_variables=[\"text\"],\n", " template=\"Extract key concepts (excluding named entities) from the following text:\\n\\n{text}\\n\\nKey concepts:\"\n", " )\n", " concept_chain = concept_extraction_prompt | llm.with_structured_output(Concepts)\n", " general_concepts = concept_chain.invoke({\"text\": content}).concepts_list\n", " \n", " # Combine named entities and general concepts\n", " all_concepts = list(set(named_entities + general_concepts))\n", " \n", " self.concept_cache[content] = all_concepts\n", " return all_concepts\n", "\n", " def _extract_concepts(self, splits, llm):\n", " \"\"\"\n", " Extracts concepts for all document splits using multi-threading.\n", " \n", " Args:\n", " - splits (list): A list of document splits.\n", " - llm: An instance of a large language model.\n", " \n", " Returns:\n", " - None\n", " \"\"\"\n", " with ThreadPoolExecutor() as executor:\n", " future_to_node = {executor.submit(self._extract_concepts_and_entities, split.page_content, llm): i \n", " for i, split in enumerate(splits)}\n", " \n", " for future in tqdm(as_completed(future_to_node), total=len(splits), desc=\"Extracting concepts and entities\"):\n", " node = future_to_node[future]\n", " concepts = future.result()\n", " self.graph.nodes[node]['concepts'] = concepts\n", "\n", " def _add_edges(self, embeddings):\n", " \"\"\"\n", " Adds edges to the graph based on the similarity of embeddings and shared concepts.\n", " \n", " Args:\n", " - embeddings (numpy.ndarray): An array of embeddings for the document splits.\n", " \n", " Returns:\n", " - None\n", " \"\"\"\n", " similarity_matrix = self._compute_similarities(embeddings)\n", " num_nodes = len(self.graph.nodes)\n", " \n", " for node1 in tqdm(range(num_nodes), desc=\"Adding edges\"):\n", " for node2 in range(node1 + 1, num_nodes):\n", " similarity_score = similarity_matrix[node1][node2]\n", " if similarity_score > self.edges_threshold:\n", " shared_concepts = set(self.graph.nodes[node1]['concepts']) & set(self.graph.nodes[node2]['concepts'])\n", " edge_weight = self._calculate_edge_weight(node1, node2, similarity_score, shared_concepts)\n", " self.graph.add_edge(node1, node2, weight=edge_weight, \n", " similarity=similarity_score,\n", " shared_concepts=list(shared_concepts))\n", "\n", " def _calculate_edge_weight(self, node1, node2, similarity_score, shared_concepts, alpha=0.7, beta=0.3):\n", " \"\"\"\n", " Calculates the weight of an edge based on similarity score and shared concepts.\n", " \n", " Args:\n", " - node1 (int): The first node.\n", " - node2 (int): The second node.\n", " - similarity_score (float): The similarity score between the nodes.\n", " - shared_concepts (set): The set of shared concepts between the nodes.\n", " - alpha (float, optional): The weight of the similarity score. Default is 0.7.\n", " - beta (float, optional): The weight of the shared concepts. Default is 0.3.\n", " \n", " Returns:\n", " - float: The calculated weight of the edge.\n", " \"\"\"\n", " max_possible_shared = min(len(self.graph.nodes[node1]['concepts']), len(self.graph.nodes[node2]['concepts']))\n", " normalized_shared_concepts = len(shared_concepts) / max_possible_shared if max_possible_shared > 0 else 0\n", " return alpha * similarity_score + beta * normalized_shared_concepts\n", "\n", " def _lemmatize_concept(self, concept):\n", " \"\"\"\n", " Lemmatizes a given concept.\n", " \n", " Args:\n", " - concept (str): The concept to be lemmatized.\n", " \n", " Returns:\n", " - str: The lemmatized concept.\n", " \"\"\"\n", " return ' '.join([self.lemmatizer.lemmatize(word) for word in concept.lower().split()])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the Query Engine class" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "\n", "# Define the AnswerCheck class\n", "class AnswerCheck(BaseModel):\n", " is_complete: bool = Field(description=\"Whether the current context provides a complete answer to the query\")\n", " answer: str = Field(description=\"The current answer based on the context, if any\")\n", "\n", "# Define the QueryEngine class\n", "class QueryEngine:\n", " def __init__(self, vector_store, knowledge_graph, llm):\n", " self.vector_store = vector_store\n", " self.knowledge_graph = knowledge_graph\n", " self.llm = llm\n", " self.max_context_length = 4000\n", " self.answer_check_chain = self._create_answer_check_chain()\n", "\n", " def _create_answer_check_chain(self):\n", " \"\"\"\n", " Creates a chain to check if the context provides a complete answer to the query.\n", " \n", " Args:\n", " - None\n", " \n", " Returns:\n", " - Chain: A chain to check if the context provides a complete answer.\n", " \"\"\"\n", " answer_check_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"context\"],\n", " template=\"Given the query: '{query}'\\n\\nAnd the current context:\\n{context}\\n\\nDoes this context provide a complete answer to the query? If yes, provide the answer. If no, state that the answer is incomplete.\\n\\nIs complete answer (Yes/No):\\nAnswer (if complete):\"\n", " )\n", " return answer_check_prompt | self.llm.with_structured_output(AnswerCheck)\n", "\n", " def _check_answer(self, query: str, context: str) -> Tuple[bool, str]:\n", " \"\"\"\n", " Checks if the current context provides a complete answer to the query.\n", " \n", " Args:\n", " - query (str): The query to be answered.\n", " - context (str): The current context.\n", " \n", " Returns:\n", " - tuple: A tuple containing:\n", " - is_complete (bool): Whether the context provides a complete answer.\n", " - answer (str): The answer based on the context, if complete.\n", " \"\"\"\n", " response = self.answer_check_chain.invoke({\"query\": query, \"context\": context})\n", " return response.is_complete, response.answer\n", "\n", " \n", "\n", " def _expand_context(self, query: str, relevant_docs) -> Tuple[str, List[int], Dict[int, str], str]:\n", " \"\"\"\n", " Expands the context by traversing the knowledge graph using a Dijkstra-like approach.\n", " \n", " This method implements a modified version of Dijkstra's algorithm to explore the knowledge graph,\n", " prioritizing the most relevant and strongly connected information. The algorithm works as follows:\n", "\n", " 1. Initialize:\n", " - Start with nodes corresponding to the most relevant documents.\n", " - Use a priority queue to manage the traversal order, where priority is based on connection strength.\n", " - Maintain a dictionary of best known \"distances\" (inverse of connection strengths) to each node.\n", "\n", " 2. Traverse:\n", " - Always explore the node with the highest priority (strongest connection) next.\n", " - For each node, check if we've found a complete answer.\n", " - Explore the node's neighbors, updating their priorities if a stronger connection is found.\n", "\n", " 3. Concept Handling:\n", " - Track visited concepts to guide the exploration towards new, relevant information.\n", " - Expand to neighbors only if they introduce new concepts.\n", "\n", " 4. Termination:\n", " - Stop if a complete answer is found.\n", " - Continue until the priority queue is empty (all reachable nodes explored).\n", "\n", " This approach ensures that:\n", " - We prioritize the most relevant and strongly connected information.\n", " - We explore new concepts systematically.\n", " - We find the most relevant answer by following the strongest connections in the knowledge graph.\n", "\n", " Args:\n", " - query (str): The query to be answered.\n", " - relevant_docs (List[Document]): A list of relevant documents to start the traversal.\n", "\n", " Returns:\n", " - tuple: A tuple containing:\n", " - expanded_context (str): The accumulated context from traversed nodes.\n", " - traversal_path (List[int]): The sequence of node indices visited.\n", " - filtered_content (Dict[int, str]): A mapping of node indices to their content.\n", " - final_answer (str): The final answer found, if any.\n", " \"\"\"\n", " # Initialize variables\n", " expanded_context = \"\"\n", " traversal_path = []\n", " visited_concepts = set()\n", " filtered_content = {}\n", " final_answer = \"\"\n", " \n", " priority_queue = []\n", " distances = {} # Stores the best known \"distance\" (inverse of connection strength) to each node\n", " \n", " print(\"\\nTraversing the knowledge graph:\")\n", " \n", " # Initialize priority queue with closest nodes from relevant docs\n", " for doc in relevant_docs:\n", " # Find the most similar node in the knowledge graph for each relevant document\n", " closest_nodes = self.vector_store.similarity_search_with_score(doc.page_content, k=1)\n", " closest_node_content, similarity_score = closest_nodes[0]\n", " \n", " # Get the corresponding node in our knowledge graph\n", " closest_node = next(n for n in self.knowledge_graph.graph.nodes if self.knowledge_graph.graph.nodes[n]['content'] == closest_node_content.page_content)\n", " \n", " # Initialize priority (inverse of similarity score for min-heap behavior)\n", " priority = 1 / similarity_score\n", " heapq.heappush(priority_queue, (priority, closest_node))\n", " distances[closest_node] = priority\n", " \n", " step = 0\n", " while priority_queue:\n", " # Get the node with the highest priority (lowest distance value)\n", " current_priority, current_node = heapq.heappop(priority_queue)\n", " \n", " # Skip if we've already found a better path to this node\n", " if current_priority > distances.get(current_node, float('inf')):\n", " continue\n", " \n", " if current_node not in traversal_path:\n", " step += 1\n", " traversal_path.append(current_node)\n", " node_content = self.knowledge_graph.graph.nodes[current_node]['content']\n", " node_concepts = self.knowledge_graph.graph.nodes[current_node]['concepts']\n", " \n", " # Add node content to our accumulated context\n", " filtered_content[current_node] = node_content\n", " expanded_context += \"\\n\" + node_content if expanded_context else node_content\n", " \n", " # Log the current step for debugging and visualization\n", " print(f\"\\nStep {step} - Node {current_node}:\")\n", " print(f\"Content: {node_content[:100]}...\") \n", " print(f\"Concepts: {', '.join(node_concepts)}\")\n", " print(\"-\" * 50)\n", " \n", " # Check if we have a complete answer with the current context\n", " is_complete, answer = self._check_answer(query, expanded_context)\n", " if is_complete:\n", " final_answer = answer\n", " break\n", " \n", " # Process the concepts of the current node\n", " node_concepts_set = set(self.knowledge_graph._lemmatize_concept(c) for c in node_concepts)\n", " if not node_concepts_set.issubset(visited_concepts):\n", " visited_concepts.update(node_concepts_set)\n", " \n", " # Explore neighbors\n", " for neighbor in self.knowledge_graph.graph.neighbors(current_node):\n", " edge_data = self.knowledge_graph.graph[current_node][neighbor]\n", " edge_weight = edge_data['weight']\n", " \n", " # Calculate new distance (priority) to the neighbor\n", " # Note: We use 1 / edge_weight because higher weights mean stronger connections\n", " distance = current_priority + (1 / edge_weight)\n", " \n", " # If we've found a stronger connection to the neighbor, update its distance\n", " if distance < distances.get(neighbor, float('inf')):\n", " distances[neighbor] = distance\n", " heapq.heappush(priority_queue, (distance, neighbor))\n", " \n", " # Process the neighbor node if it's not already in our traversal path\n", " if neighbor not in traversal_path:\n", " step += 1\n", " traversal_path.append(neighbor)\n", " neighbor_content = self.knowledge_graph.graph.nodes[neighbor]['content']\n", " neighbor_concepts = self.knowledge_graph.graph.nodes[neighbor]['concepts']\n", " \n", " filtered_content[neighbor] = neighbor_content\n", " expanded_context += \"\\n\" + neighbor_content if expanded_context else neighbor_content\n", " \n", " # Log the neighbor node information\n", " print(f\"\\nStep {step} - Node {neighbor} (neighbor of {current_node}):\")\n", " print(f\"Content: {neighbor_content[:100]}...\")\n", " print(f\"Concepts: {', '.join(neighbor_concepts)}\")\n", " print(\"-\" * 50)\n", " \n", " # Check if we have a complete answer after adding the neighbor's content\n", " is_complete, answer = self._check_answer(query, expanded_context)\n", " if is_complete:\n", " final_answer = answer\n", " break\n", " \n", " # Process the neighbor's concepts\n", " neighbor_concepts_set = set(self.knowledge_graph._lemmatize_concept(c) for c in neighbor_concepts)\n", " if not neighbor_concepts_set.issubset(visited_concepts):\n", " visited_concepts.update(neighbor_concepts_set)\n", " \n", " # If we found a final answer, break out of the main loop\n", " if final_answer:\n", " break\n", "\n", " # If we haven't found a complete answer, generate one using the LLM\n", " if not final_answer:\n", " print(\"\\nGenerating final answer...\")\n", " response_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"context\"],\n", " template=\"Based on the following context, please answer the query.\\n\\nContext: {context}\\n\\nQuery: {query}\\n\\nAnswer:\"\n", " )\n", " response_chain = response_prompt | self.llm\n", " input_data = {\"query\": query, \"context\": expanded_context}\n", " final_answer = response_chain.invoke(input_data)\n", "\n", " return expanded_context, traversal_path, filtered_content, final_answer\n", "\n", " def query(self, query: str) -> Tuple[str, List[int], Dict[int, str]]:\n", " \"\"\"\n", " Processes a query by retrieving relevant documents, expanding the context, and generating the final answer.\n", " \n", " Args:\n", " - query (str): The query to be answered.\n", " \n", " Returns:\n", " - tuple: A tuple containing:\n", " - final_answer (str): The final answer to the query.\n", " - traversal_path (list): The traversal path of nodes in the knowledge graph.\n", " - filtered_content (dict): The filtered content of nodes.\n", " \"\"\"\n", " with get_openai_callback() as cb:\n", " print(f\"\\nProcessing query: {query}\")\n", " relevant_docs = self._retrieve_relevant_documents(query)\n", " expanded_context, traversal_path, filtered_content, final_answer = self._expand_context(query, relevant_docs)\n", " \n", " if not final_answer:\n", " print(\"\\nGenerating final answer...\")\n", " response_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"context\"],\n", " template=\"Based on the following context, please answer the query.\\n\\nContext: {context}\\n\\nQuery: {query}\\n\\nAnswer:\"\n", " )\n", " \n", " response_chain = response_prompt | self.llm\n", " input_data = {\"query\": query, \"context\": expanded_context}\n", " response = response_chain.invoke(input_data)\n", " final_answer = response\n", " else:\n", " print(\"\\nComplete answer found during traversal.\")\n", " \n", " print(f\"\\nFinal Answer: {final_answer}\")\n", " print(f\"\\nTotal Tokens: {cb.total_tokens}\")\n", " print(f\"Prompt Tokens: {cb.prompt_tokens}\")\n", " print(f\"Completion Tokens: {cb.completion_tokens}\")\n", " print(f\"Total Cost (USD): ${cb.total_cost}\")\n", " \n", " return final_answer, traversal_path, filtered_content\n", "\n", " def _retrieve_relevant_documents(self, query: str):\n", " \"\"\"\n", " Retrieves relevant documents based on the query using the vector store.\n", " \n", " Args:\n", " - query (str): The query to be answered.\n", " \n", " Returns:\n", " - list: A list of relevant documents.\n", " \"\"\"\n", " print(\"\\nRetrieving relevant documents...\")\n", " retriever = self.vector_store.as_retriever(search_type=\"similarity\", search_kwargs={\"k\": 5})\n", " compressor = LLMChainExtractor.from_llm(self.llm)\n", " compression_retriever = ContextualCompressionRetriever(base_compressor=compressor, base_retriever=retriever)\n", " return compression_retriever.invoke(query)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the Visualizer class" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "# Import necessary libraries\n", "import networkx as nx\n", "import matplotlib.pyplot as plt\n", "import matplotlib.patches as patches\n", "\n", "# Define the Visualizer class\n", "class Visualizer:\n", " @staticmethod\n", " def visualize_traversal(graph, traversal_path):\n", " \"\"\"\n", " Visualizes the traversal path on the knowledge graph with nodes, edges, and traversal path highlighted.\n", "\n", " Args:\n", " - graph (networkx.Graph): The knowledge graph containing nodes and edges.\n", " - traversal_path (list of int): The list of node indices representing the traversal path.\n", "\n", " Returns:\n", " - None\n", " \"\"\"\n", " traversal_graph = nx.DiGraph()\n", " \n", " # Add nodes and edges from the original graph\n", " for node in graph.nodes():\n", " traversal_graph.add_node(node)\n", " for u, v, data in graph.edges(data=True):\n", " traversal_graph.add_edge(u, v, **data)\n", " \n", " fig, ax = plt.subplots(figsize=(16, 12))\n", " \n", " # Generate positions for all nodes\n", " pos = nx.spring_layout(traversal_graph, k=1, iterations=50)\n", " \n", " # Draw regular edges with color based on weight\n", " edges = traversal_graph.edges()\n", " edge_weights = [traversal_graph[u][v].get('weight', 0.5) for u, v in edges]\n", " nx.draw_networkx_edges(traversal_graph, pos, \n", " edgelist=edges,\n", " edge_color=edge_weights,\n", " edge_cmap=plt.cm.Blues,\n", " width=2,\n", " ax=ax)\n", " \n", " # Draw nodes\n", " nx.draw_networkx_nodes(traversal_graph, pos, \n", " node_color='lightblue',\n", " node_size=3000,\n", " ax=ax)\n", " \n", " # Draw traversal path with curved arrows\n", " edge_offset = 0.1\n", " for i in range(len(traversal_path) - 1):\n", " start = traversal_path[i]\n", " end = traversal_path[i + 1]\n", " start_pos = pos[start]\n", " end_pos = pos[end]\n", " \n", " # Calculate control point for curve\n", " mid_point = ((start_pos[0] + end_pos[0]) / 2, (start_pos[1] + end_pos[1]) / 2)\n", " control_point = (mid_point[0] + edge_offset, mid_point[1] + edge_offset)\n", " \n", " # Draw curved arrow\n", " arrow = patches.FancyArrowPatch(start_pos, end_pos,\n", " connectionstyle=f\"arc3,rad={0.3}\",\n", " color='red',\n", " arrowstyle=\"->\",\n", " mutation_scale=20,\n", " linestyle='--',\n", " linewidth=2,\n", " zorder=4)\n", " ax.add_patch(arrow)\n", " \n", " # Prepare labels for the nodes\n", " labels = {}\n", " for i, node in enumerate(traversal_path):\n", " concepts = graph.nodes[node].get('concepts', [])\n", " label = f\"{i + 1}. {concepts[0] if concepts else ''}\"\n", " labels[node] = label\n", " \n", " for node in traversal_graph.nodes():\n", " if node not in labels:\n", " concepts = graph.nodes[node].get('concepts', [])\n", " labels[node] = concepts[0] if concepts else ''\n", " \n", " # Draw labels\n", " nx.draw_networkx_labels(traversal_graph, pos, labels, font_size=8, font_weight=\"bold\", ax=ax)\n", " \n", " # Highlight start and end nodes\n", " start_node = traversal_path[0]\n", " end_node = traversal_path[-1]\n", " \n", " nx.draw_networkx_nodes(traversal_graph, pos, \n", " nodelist=[start_node], \n", " node_color='lightgreen', \n", " node_size=3000,\n", " ax=ax)\n", " \n", " nx.draw_networkx_nodes(traversal_graph, pos, \n", " nodelist=[end_node], \n", " node_color='lightcoral', \n", " node_size=3000,\n", " ax=ax)\n", " \n", " ax.set_title(\"Graph Traversal Flow\")\n", " ax.axis('off')\n", " \n", " # Add colorbar for edge weights\n", " sm = plt.cm.ScalarMappable(cmap=plt.cm.Blues, norm=plt.Normalize(vmin=min(edge_weights), vmax=max(edge_weights)))\n", " sm.set_array([])\n", " cbar = fig.colorbar(sm, ax=ax, orientation='vertical', fraction=0.046, pad=0.04)\n", " cbar.set_label('Edge Weight', rotation=270, labelpad=15)\n", " \n", " # Add legend\n", " regular_line = plt.Line2D([0], [0], color='blue', linewidth=2, label='Regular Edge')\n", " traversal_line = plt.Line2D([0], [0], color='red', linewidth=2, linestyle='--', label='Traversal Path')\n", " start_point = plt.Line2D([0], [0], marker='o', color='w', markerfacecolor='lightgreen', markersize=15, label='Start Node')\n", " end_point = plt.Line2D([0], [0], marker='o', color='w', markerfacecolor='lightcoral', markersize=15, label='End Node')\n", " legend = plt.legend(handles=[regular_line, traversal_line, start_point, end_point], loc='upper left', bbox_to_anchor=(0, 1), ncol=2)\n", " legend.get_frame().set_alpha(0.8)\n", "\n", " plt.tight_layout()\n", " plt.show()\n", "\n", " @staticmethod\n", " def print_filtered_content(traversal_path, filtered_content):\n", " \"\"\"\n", " Prints the filtered content of visited nodes in the order of traversal.\n", "\n", " Args:\n", " - traversal_path (list of int): The list of node indices representing the traversal path.\n", " - filtered_content (dict of int: str): A dictionary mapping node indices to their filtered content.\n", "\n", " Returns:\n", " - None\n", " \"\"\"\n", " print(\"\\nFiltered content of visited nodes in order of traversal:\")\n", " for i, node in enumerate(traversal_path):\n", " print(f\"\\nStep {i + 1} - Node {node}:\")\n", " print(f\"Filtered Content: {filtered_content.get(node, 'No filtered content available')[:200]}...\") # Print first 200 characters\n", " print(\"-\" * 50)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the graph RAG class" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "class GraphRAG:\n", " def __init__(self):\n", " \"\"\"\n", " Initializes the GraphRAG system with components for document processing, knowledge graph construction,\n", " querying, and visualization.\n", " \n", " Attributes:\n", " - llm: An instance of a large language model (LLM) for generating responses.\n", " - embedding_model: An instance of an embedding model for document embeddings.\n", " - document_processor: An instance of the DocumentProcessor class for processing documents.\n", " - knowledge_graph: An instance of the KnowledgeGraph class for building and managing the knowledge graph.\n", " - query_engine: An instance of the QueryEngine class for handling queries (initialized as None).\n", " - visualizer: An instance of the Visualizer class for visualizing the knowledge graph traversal.\n", " \"\"\"\n", " self.llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o-mini\", max_tokens=4000)\n", " self.embedding_model = OpenAIEmbeddings()\n", " self.document_processor = DocumentProcessor()\n", " self.knowledge_graph = KnowledgeGraph()\n", " self.query_engine = None\n", " self.visualizer = Visualizer()\n", "\n", " def process_documents(self, documents):\n", " \"\"\"\n", " Processes a list of documents by splitting them into chunks, embedding them, and building a knowledge graph.\n", " \n", " Args:\n", " - documents (list of str): A list of documents to be processed.\n", " \n", " Returns:\n", " - None\n", " \"\"\"\n", " splits, vector_store = self.document_processor.process_documents(documents)\n", " self.knowledge_graph.build_graph(splits, self.llm, self.embedding_model)\n", " self.query_engine = QueryEngine(vector_store, self.knowledge_graph, self.llm)\n", "\n", " def query(self, query: str):\n", " \"\"\"\n", " Handles a query by retrieving relevant information from the knowledge graph and visualizing the traversal path.\n", " \n", " Args:\n", " - query (str): The query to be answered.\n", " \n", " Returns:\n", " - str: The response to the query.\n", " \"\"\"\n", " response, traversal_path, filtered_content = self.query_engine.query(query)\n", " \n", " if traversal_path:\n", " self.visualizer.visualize_traversal(self.knowledge_graph.graph, traversal_path)\n", " else:\n", " print(\"No traversal path to visualize.\")\n", " \n", " return response\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define documents path" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Load the documents" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "loader = PyPDFLoader(path)\n", "documents = loader.load()\n", "documents = documents[:10]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a graph RAG instance" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "graph_rag = GraphRAG()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Process the documents and create the graph" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Extracting concepts and entities: 100%|██████████| 30/30 [00:05<00:00, 5.64it/s]\n", "Adding edges: 100%|██████████| 30/30 [00:00<00:00, 15058.54it/s]\n" ] } ], "source": [ "graph_rag.process_documents(documents)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Input a query and get the retrieved information from the graph RAG" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Processing query: what is the main cause of climate change?\n", "\n", "Retrieving relevant documents...\n", "\n", "Traversing the knowledge graph:\n", "\n", "Step 1 - Node 2:\n", "Content: driven by human activities, particularly the emission of greenhou se gases. \n", "Chapter 2: Causes of C...\n", "Concepts: Coal, fossil fuels, energy, atmosphere, fossil fuel consumption, greenhou, life on Earth, coal, emission, transportation, greenhouse gases, industrial revolution, heating, human activities, warmer climate, electricity, natural gas, Fossil Fuels, oil, CH4, greenhouse effect, climate change\n", "--------------------------------------------------\n", "\n", "Step 2 - Node 0 (neighbor of 2):\n", "Content: Understanding Climate Change \n", "Chapter 1: Introduction to Climate Change \n", "Climate change refers to ...\n", "Concepts: human civilization, Holocene epoch, human activities, burning of fossil fuels, historical context, wind patterns, modern climate era, temperature, Earth's orbit, solar energy, glacial advance, weather patterns, precipitation, global climate, ice age, deforestation, glacial retreat, climate change\n", "--------------------------------------------------\n", "\n", "Step 3 - Node 1 (neighbor of 2):\n", "Content: Most of these climate changes are attributed to very small variations in Earth's orbit that \n", "change ...\n", "Concepts: Holocene epoch, The Intergovernmental Panel on Climate Change (IPCC, sea levels, Earth's orbit, scientific observations, industrial era, Ice core samples, emission of greenhouse gases, future trends, ocean sediments, past climate conditions, greenhou, extreme weather events, historical record, global temperatures, tree rings, human activities, solar energy, climate change\n", "--------------------------------------------------\n", "\n", "Complete answer found during traversal.\n", "\n", "Final Answer: The main cause of climate change is the increase in greenhouse gases in the atmosphere, primarily driven by human activities such as the burning of fossil fuels and deforestation. Greenhouse gases like carbon dioxide (CO2), methane (CH4), and nitrous oxide (N2O) trap heat from the sun, leading to a warmer climate.\n", "\n", "Total Tokens: 3201\n", "Prompt Tokens: 2903\n", "Completion Tokens: 298\n", "Total Cost (USD): $0.00061425\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABjQAAASmCAYAAACJLELzAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd5wcdf3H8dfM1us1vV0IIfSEgCA1gGACGFpAqhCU3qQXNRDgRw8oSBWQIIIUiYiUIN3QRUhoIYT0cinXb++2z/z+2Nu93SvJlb3+fj4e+5CdnZ35ztxyh9/3fj8fw7ZtGxERERERERERERERkV7M7OkBiIiIiIiIiIiIiIiIbI0CDRERERERERERERER6fUUaIiIiIiIiIiIiIiISK+nQENERERERERERERERHo9BRoiIiIiIiIiIiIiItLrKdAQEREREREREREREZFeT4GGiIiIiIiIiIiIiIj0ego0RERERERERERERESk11OgISIiIiIiIiIiIiIivZ4CDRERERFpk5UrV2IYBnPmzOnpofQ7M2fOpKSkJC3HevfddzEMg3fffTctxxMREREREektFGiIiIiI9DIrVqzgwgsvZLvttiMzM5PMzEx23HFHLrjgAr788sueHl6HlJSUYBjGVh9z587t6aH2agceeGCr9+67777r6eGJiIiIiIh0KWdPD0BEREREGr388succMIJOJ1OTjnlFCZOnIhpmnz33XfMmzePBx98kBUrVjBmzJieHmq7/OEPf8Dn8yWev/rqq/ztb3/j97//PcXFxYnt++yzT08Mr08ZOXIkt956a7Ptw4cP74HRiIiIiIiIdB8FGiIiIiK9xLJlyzjxxBMZM2YMb731FsOGDUt5/fbbb+eBBx7ANLe8yLauro6srKyuHGq7HX300SnPN2zYwN/+9jeOPvroLZZa6o3X0tNjysvL49RTT+2x84uIiIiIiPQUlZwSERER6SXuuOMO6urqePzxx5uFGQBOp5OLL76YUaNGJbbNnDmT7Oxsli1bxuGHH05OTg6nnHIKAAsWLOD4449n9OjReDweRo0axaWXXorf7085bvwYy5cvZ+rUqWRlZTF8+HBuvPFGbNtucax/+tOfGDduHB6Phx/96Ef897//7fT1d/Za5syZg2EYrFq1qtmxr732WtxuN5WVlYltn3zyCdOmTSMvL4/MzEymTJnCBx98kPK+2bNnYxgG3377LSeffDIFBQXst99+QCyUOeOMMxg5ciQej4dhw4Zx1FFHsXLlysT7//nPf3LEEUcwfPhwPB4P48aN46abbiIajXb6frXX888/z+67705GRgbFxcWceuqprFu3LvH6Sy+9hGEYKWXNXnjhBQzD4Nhjj0051g477MAJJ5zQbWMXEREREREBrdAQERER6TVefvlltt12W/baa692vS8SiTB16lT2228/5syZQ2ZmJhCbwK6vr+e8886jqKiITz/9lD/+8Y+sXbuW559/PuUY0WiUadOm8eMf/5g77riD+fPnc/311xOJRLjxxhtT9n366aepra3lnHPOwTAM7rjjDo499liWL1+Oy+Xq1D3ozLX8/Oc/56qrruK5557jyiuvTDnuc889x09/+lMKCgoAePvttznssMPYfffduf766zFNk8cff5yDDz6YBQsWsOeee6a8//jjj2f8+PHccsstiZBnxowZfPPNN1x00UWUlJSwadMm3njjDVavXp1YdTJ37lyys7O57LLLyM7O5u233+a6666jpqaGO++8s0P3KBqNUlZWlrLN6/WSnZ3d6nvmzp3LGWecwY9+9CNuvfVWNm7cyD333MMHH3zAF198QX5+Pvvttx+GYfCf//yHXXfdFYgFSaZp8v777yeOtXnzZr777jsuvPDCDo1fRERERESkw2wRERER6XHV1dU2YB999NHNXqusrLQ3b96ceNTX1ydeO/30023Avuaaa5q9L3m/uFtvvdU2DMNetWpVs2NcdNFFiW2WZdlHHHGE7Xa77c2bN9u2bdsrVqywAbuoqMiuqKhI7PvPf/7TBux//etfbb7eO++80wbsFStWpPVa9t57b3v33XdP2e/TTz+1Afsvf/lL4trGjx9vT5061bYsK+UcY8eOtQ899NDEtuuvv94G7JNOOinlmJWVlTZg33nnnVu8zpbGfc4559iZmZl2IBBIufYxY8Zs8Vi2bdtTpkyxgWaP008/PbHPO++8YwP2O++8Y9u2bYdCIXvw4MH2zjvvbPv9/sR+L7/8sg3Y1113XWLbTjvtZP/85z9PPJ88ebJ9/PHH24C9ePFi27Zte968eTZgL1q0aKvjFRERERERSSeVnBIRERHpBWpqagBa/Jb9gQceyKBBgxKP+++/v9k+5513XrNtGRkZiX+uq6ujrKyMffbZB9u2+eKLL5rtn/yNe8MwuPDCCwmFQrz55psp+51wwgmJlQ4A+++/PwDLly/f2mW2SWeu5YQTTuB///sfy5YtS2x79tln8Xg8HHXUUQAsXLiQpUuXcvLJJ1NeXk5ZWRllZWXU1dXxk5/8hP/85z9YlpVy/nPPPbfZeNxuN++++25KGastjbu2tpaysjL2339/6uvr+e6779p4R1KVlJTwxhtvpDyuuuqqVvf/7LPP2LRpE+effz5erzex/YgjjmD77bfnlVdeSWzbf//9WbBgQWK8ixYt4uyzz6a4uDixfcGCBeTn57Pzzjt3aPwiIiIiIiIdpUBDREREpBfIyckBwOfzNXvt4Ycf5o033uCvf/1ri+91Op2MHDmy2fbVq1czc+ZMCgsLyc7OZtCgQUyZMgWA6urqlH1N02SbbbZJ2bbddtsBpPSEABg9enTK83i4saWJ/bbq7LUcf/zxmKbJs88+C4Bt2zz//PMcdthh5ObmArB06VIATj/99JSgaNCgQTz66KMEg8Fm92fs2LEpzz0eD7fffjuvvfYaQ4YM4YADDuCOO+5gw4YNKft98803HHPMMeTl5ZGbm8ugQYMSDb2bnqOtsrKyOOSQQ1IeO+64Y6v7x3uKTJgwodlr22+/fUrPkf3335/S0lJ++OEHPvzwQwzDYO+9904JOhYsWMC+++671eb0IiIiIiIi6aYeGiIiIiK9QF5eHsOGDePrr79u9lq8p0bTYCHO4/E0m1yORqMceuihVFRUcPXVV7P99tuTlZXFunXrmDlzZrMVCO3hcDha3G630kC8PTp7LcOHD2f//ffnueee4ze/+Q0ff/wxq1ev5vbbb0/sE9//zjvvZNKkSS2Oo+lKmeSVFnGXXHIJ06dP58UXX+T1119n1qxZ3Hrrrbz99tvstttuVFVVMWXKFHJzc7nxxhsZN24cXq+Xzz//nKuvvrpTP4OuEm94/p///Ifly5czefJksrKy2H///bn33nvx+Xx88cUX3HzzzT08UhERERERGYgUaIiIiIj0EkcccQSPPvoon376abOm1O311Vdf8f333/PEE09w2mmnJba/8cYbLe5vWRbLly9PrMoA+P777wESDa57Snuv5YQTTuD8889nyZIlPPvss2RmZjJ9+vTE6+PGjQMgNzeXQw45pFNjGzduHJdffjmXX345S5cuZdKkSdx111389a9/5d1336W8vJx58+ZxwAEHJN6zYsWKTp2zvcaMGQPAkiVLOPjgg1NeW7JkSeJ1iK2+GT16NAsWLGD58uWJcmIHHHAAl112Gc8//zzRaDTlekRERERERLqL1omLiIiI9BJXXXUVmZmZ/PKXv2Tjxo3NXm/PCoj4Kork99i2zT333NPqe+67776Ufe+77z5cLhc/+clP2nzertDea5kxYwYOh4O//e1vPP/88/zsZz8jKysr8fruu+/OuHHjmDNnToslvjZv3rzVMdXX1xMIBFK2jRs3jpycHILBYKvjDoVCPPDAA1s9fjrtscceDB48mIceeigxNoDXXnuNxYsXc8QRR6Tsv//++/P222/z6aefJgKNSZMmkZOTw2233UZGRga77757t16DiIiIiIgIaIWGiIiISK8xfvx4nn76aU466SQmTJjAKaecwsSJE7FtmxUrVvD0009jmmaLPSaa2n777Rk3bhxXXHEF69atIzc3lxdeeKHVPhder5f58+dz+umns9dee/Haa6/xyiuv8Jvf/IZBgwal+1Lbpb3XMnjwYA466CDuvvtuamtrOeGEE1JeN02TRx99lMMOO4yddtqJM844gxEjRrBu3TreeecdcnNz+de//rXFMX3//ff85Cc/4ec//zk77rgjTqeTf/zjH2zcuJETTzwRgH322YeCggJOP/10Lr74YgzD4Mknn0xLaa72cLlc3H777ZxxxhlMmTKFk046iY0bN3LPPfdQUlLCpZdemrL//vvvz1NPPYVhGIkSVA6Hg3322YfXX3+dAw88ELfb3a3XICIiIiIiAgo0RERERHqVo446iq+++oq77rqLf//73/z5z3/GMAzGjBnDEUccwbnnnsvEiRO3ehyXy8W//vUvLr74Ym699Va8Xi/HHHMMF154YYvvdzgczJ8/n/POO48rr7ySnJwcrr/+eq677rquuMx2ae+1QKzs1JtvvklOTg6HH354s9cPPPBAPvroI2666Sbuu+8+fD4fQ4cOZa+99uKcc87Z6phGjRrFSSedxFtvvcWTTz6J0+lk++2357nnnmPGjBkAFBUV8fLLL3P55Zfzu9/9joKCAk499VR+8pOfMHXq1M7dlHaaOXMmmZmZ3HbbbVx99dVkZWVxzDHHcPvtt5Ofn5+yb3xVxvbbb09RUVHK9tdffz3xuoiIiIiISHcz7O7+ipiIiIiI9CozZ87k73//e4vll0RERERERER6C/XQEBERERERERERERGRXk+BhoiIiIiIiIiIiIiI9HoKNEREREREREREREREpNdTDw0REREREREREREREen1tEJDRERERERERERERER6PQUaIiIiIiIiIiIiIiLS6zl7egAiIiIiIiIiIiIiIoFAgFAo1NPD6HJutxuv19vTw+iTFGiIiIiIiIiIiIiISI8KBAJk5BRBpL6nh9Llhg4dyooVKxRqdIACDRERERERERERERHpUaFQCCL1eHY8HRzunh5O14mG2PDtE4RCIQUaHaBAQ0RERERERERERER6B4cbox8HGnZPD6CPU1NwERERERERERERERHp9RRoiIiIiIiIiIiIiIhIr6eSUyIiIiIiIiIiIiLSOxhm7NFf9edr6wZpDTSi0SjhcDidhxQR2SK3241p6g+BiIiIiIiIiIhIf5eWQMO2bTZs2EBVVVU6Dici0mamaTJ27Fjc7v7bLEpERERERERERETSFGjEw4zBgweTmZmJYRjpOKxIjzEMA9M0Uz7Ltm1jWRa2bffgyCSZZVmsX7+e0tJSRo8erd89IiIiIiIiIiIi/VinA41oNJoIM4qKitIxJpEeZdkWpmFi2RY1Vg0hO4TbcJPryMVluBKvS+8waNAg1q9fTyQSweVy9fRwRERERERERESkMwygP39ptR9fWnfodKAR75mRmZnZ6cGI9CTLtjAwWBZexlfBr1gfWU+UaOJ1Bw6GO4ezi2cXtnVti42tYKMXiJeaikajCjRERERERERERET6sbQ1BVepF+nLLNui2qpmft18NkU3tbhPlChrImtYE1nDEMcQpmZNJc/MU6jRw/S7R0REREREREREZGDQTKwMeJZtsS6yjqdrnm41zGhqY3QjT9c8zbrIOizb6uIRioiIiIiIiIiIiIgCjV5g5syZHH300T09jIR3330XwzCoqqrq6aF0ufjKjJd8LxEh0q73Rojwku8lqq1qhRqdMHfuXPLz83t6GCIiIiIiIiIiItLLDdhAY+bMmRiGgWEYuFwuxo4dy1VXXUUgEOjpoaVVSUlJ4jqTH7fddltPD61XMDCYXze/3WFGXIQIr9e9jpGGbj6bN2/mvPPOY/To0Xg8HoYOHcrUqVP54IMPGsdrGLz44oudPhfAypUrMQyDhQsXtmm/wYMHU1tbm/LapEmTmD17dlrGIyIiIiIiIiIigmH2/4d0WNp6aPRF06ZN4/HHHyccDvO///2P008/HcMwuP3223t6aO0WDodbbYh84403ctZZZ6Vsy8nJ6Y5h9WqWbbEsvKzNZaZaszG6kWXhZWzj2qZT/TRmzJhBKBTiiSeeYJtttmHjxo289dZblJeXd2p8LQmFQu1+T21tLXPmzOGGG25I+3hEREREREREREREtmZAx0Hxb8GPGjWKo48+mkMOOYQ33ngj8bplWdx6662MHTuWjIwMJk6cyN///veUY7z00kuMHz8er9fLQQcdxBNPPJFSrmn27NlMmjQp5T1/+MMfKCkpaXVc8+fPZ7/99iM/P5+ioiJ+9rOfsWzZssTr8W/MP/vss0yZMgWv18tTTz3V6vFycnIYOnRoyiMrKyvx+quvvsp2221HRkYGBx10ECtXrmx2jEceeYRRo0aRmZnJMcccw913392sTNA///lPJk+ejNfrZZtttuGGG24gEunYyofuYBomXwW/Ssuxvgp+1akwo6qqigULFnD77bdz0EEHMWbMGPbcc0+uvfZajjzySIDEZ+aYY47BMIzE82XLlnHUUUcxZMgQsrOz+dGPfsSbb76ZcvySkhJuuukmTjvtNHJzczn77LMZO3YsALvtthuGYXDggQducYwXXXQRd999N5s2tR4AVVZWctppp1FQUEBmZiaHHXYYS5cuTdln7ty5jB49OvFZaimw6WufJREREREREREREel6AzrQSPb111/z4Ycf4na7E9tuvfVW/vKXv/DQQw/xzTffcOmll3Lqqafy3nvvAbBixQqOO+44jj76aBYtWsQ555zDb3/7206Ppa6ujssuu4zPPvuMt956C9M0OeaYY7Cs1D4N11xzDb/+9a9ZvHgxU6dO7dC51qxZw7HHHsv06dNZuHAhZ555Jtdcc03KPh988AHnnnsuv/71r1m4cCGHHnooN998c8o+CxYs4LTTTuPXv/413377LQ8//DBz585ttl9vYtkW6yPr03Ks9ZH1neqjkZ2dTXZ2Ni+++CLBYLDFff773/8C8Pjjj1NaWpp47vP5OPzww3nrrbf44osvmDZtGtOnT2f16tUp758zZw4TJ07kiy++YNasWXz66acAvPnmm5SWljJv3rwtjvGkk05i22235cYbb2x1n5kzZ/LZZ5/x0ksv8dFHH2HbNocffjjhcBiATz75hF/96ldceOGFLFy4kIMOOoj/+7//SzlGX/wsiYiIiIiIiIiISNfrspJTe+wBGzZ01dFbNnQofPZZ2/d/+eWXyc7OJhKJEAwGMU2T++67D4BgMMgtt9zCm2++yd577w3ANttsw/vvv8/DDz/MlClTePjhh5kwYQJ33nknABMmTODrr7/u9MTrjBkzUp7/+c9/ZtCgQXz77bfsvPPOie2XXHIJxx577FaPd/XVV/O73/0uZdtrr73G/vvvz4MPPsi4ceO46667Etfw1VdfpZTd+uMf/8hhhx3GFVdcAcB2223Hhx9+yMsvv5zY54YbbuCaa67h9NNPB2L36qabbuKqq67i+uuvb+cd6B41Vg1Romk5VoQINVYN+Y78Dr3f6XQyd+5czjrrLB566CEmT57MlClTOPHEE9l1110BGDRoEAD5+fkMHTo08d6JEycyceLExPObbrqJf/zjH7z00ktceOGFie0HH3wwl19+eeK5w+EAoKioKOV4rYn3Xpk+fTqXXnop48aNS3l96dKlvPTSS3zwwQfss88+ADz11FOMGjWKF198keOPP5577rmHadOmcdVVVwGNn6X58+cnjtMXP0siIiIiIiIiIpImhhF79Ff9+dq6QZcFGhs2wLp1XXX09DjooIN48MEHqaur4/e//z1OpzMRJvzwww/U19dz6KGHprwnFAqx2267AbBkyRJ+9KMfpby+5557dnpcS5cu5brrruOTTz6hrKwssTJj9erVKYHGHnvs0abjXXnllcycOTNl24gRIwBYvHgxe+21V8pr8QAnbsmSJRxzzDEp2/bcc8+UQGPRokV88MEHKWFONBolEAhQX19PZmZmm8banUJ2+/tIdOXxZsyYwRFHHMGCBQv4+OOPee2117jjjjt49NFHm/38kvl8PmbPns0rr7xCaWkpkUgEv9/fbIVGWz8vWzJ16lT2228/Zs2axdNPP53y2uLFi3E6nSmfp6KiIiZMmMDixYsT+zT9LO29994pgUZf/CyJiIiIiIiIiIhI1+uyQKMNX/ju8XNmZWWx7bbbArFVEBMnTuSxxx7jV7/6FT6fD4BXXnklMfkf5/F42nwO0zSxbTtlW7z8TmumT5/OmDFjeOSRRxg+fDiWZbHzzjs3a+Sc3AdjS4qLixPX2VV8Ph833HBDiytGvF5vl567o9yGe+s7dfPxvF4vhx56KIceeiizZs3izDPP5Prrr99ioHHFFVfwxhtvMGfOHLbddlsyMjI47rjjOvx52ZrbbruNvffemyuvvDItx2uqL36WREREREREREREpOt1WaDRntJPvYFpmvzmN7/hsssu4+STT2bHHXfE4/GwevVqpkyZ0uJ7JkyYwKuvvpqyLd7XIG7QoEFs2LAB27YxGpYTLVy4sNVxlJeXs2TJEh555BH2339/AN5///1OXNmW7bDDDrz00ksp2z7++OOU5xMmTGh2XU2fT548mSVLlnR5cJJOuWYuDhxpKTvlxEmumZuGUaXacccdefHFFxPPXS4X0WjqeD/44ANmzpyZWPng8/labOzeVLxfTNPjbc2ee+7Jscce26zXyg477EAkEuGTTz5JlJyKf5533HHHxD6ffPJJyvuaft764mdJREREREREREREup6agic5/vjjcTgc3H///eTk5HDFFVdw6aWX8sQTT7Bs2TI+//xz/vjHP/LEE08AcM455/Ddd99x9dVX8/333/Pcc88xd+5cgER4ceCBB7J582buuOMOli1bxv33389rr73W6hgKCgooKiriT3/6Ez/88ANvv/02l112Waeuq7a2lg0bNqQ8ampqADj33HNZunQpV155JUuWLOHpp59OXEPcRRddxKuvvsrdd9/N0qVLefjhh3nttdcS1whw3XXX8Ze//IUbbriBb775hsWLF/PMM880693Rm5iGyXDn8LQca7hzOKbR8X+dysvLOfjgg/nrX//Kl19+yYoVK3j++ee54447OOqooxL7lZSU8NZbb7FhwwYqKysBGD9+PPPmzWPhwoUsWrSIk08+uVkD+ZYMHjyYjIwM5s+fz8aNG6murm7zeG+++WbefvttlixZktg2fvx4jjrqKM466yzef/99Fi1axKmnnsqIESMS13DxxRczf/585syZw9KlS7nvvvtSyk1B3/wsiYiIiIiIiIiISNdToJHE6XRy4YUXcscdd1BXV8dNN93ErFmzuPXWW9lhhx2YNm0ar7zyCmPHjgVg7Nix/P3vf2fevHnsuuuuPPjgg/z2t78FGstS7bDDDjzwwAPcf//9TJw4kU8//TTRXLslpmnyzDPP8L///Y+dd96ZSy+9NNF0vKOuu+46hg0blvKIN2UePXo0L7zwAi+++CITJ07koYce4pZbbkl5/7777stDDz3E3XffzcSJE5k/fz6XXnppSvmfqVOn8vLLL/Pvf/+bH/3oR/z4xz/m97//PWPGjOnU2LuSZVvs4tklLcfaxbMLlr31EKE12dnZ7LXXXvz+97/ngAMOYOedd2bWrFmcddZZiUb1AHfddRdvvPEGo0aNSvRyufvuuykoKGCfffZh+vTpTJ06lcmTJ2/1nE6nk3vvvZeHH36Y4cOHpwQnW7Pddtvxy1/+kkAgkLL98ccfZ/fdd+dnP/sZe++9N7Zt8+qrr+JyuQD48Y9/zCOPPMI999zDxIkT+fe//90sqOiLnyUREREREREREUkTw+z/D+kww27a4KGdAoEAK1asYOzYsapvT+yb6w899BBr1qzp6aF0qbPOOovvvvuOBQsW9PRQOsW2bZ6tfZaN0Y0dPsYQxxBOyDkhZcWKdB/9DhIRERERERER6ftqamrIy8vDM/lCDEfbexj3NXY0SPDz+6iuriY3N/0l7Ps7xUGd9MADD/Df//6X5cuX8+STT3LnnXdy+umn9/Sw0m7OnDksWrSIH374IVF2qz9cp43N1KypODvYTsaJk6lZU7HpVC4oIiIiIiIiIiIiIlvRZU3BB4qlS5fyf//3f1RUVDB69Gguv/xyrr322p4eVtp9+umn3HHHHdTW1rLNNttw7733cuaZZ/b0sDrNNEzyzDyOzD6Sl3wvESHS5vc6cXJk9pHkmXmd6p8hIiIiIiIiIiIiIlunklMixPppVFvVvF73epvKTw1xDGFq1lSFGb2AfgeJiIiIiIiIiPR9iZJTu1/U/0tO/e+PKjnVQVqhIULjSo0Tck5gWXgZXwa/ZH1kPVGiiX2cOBnuHM4unl0Y5xqHja0wQ0RERERERERERKSbKNAQaRAPJ7ZxbcO27m2xbIuwHcbCwsTEZbgwDRPLtjAMAwM1ARcRERERERERERHpLgo0RJowLBscYNjgrKqDYBA8Hoz8fDAaXxcRERERERERERGR7qNAQ6SBbVlgGESWLCH42WdE16yBSFKTcKcTx6hRePbYA+cOO4BtY5gqOSUiIiIiIiIiIiLSHRRoiBALM6yKCvzz5hEtLW15p0iE6IoV1K9YgWP4cDKOOQazsFChhoiIiIiIiIiISNqY0K/71vbna+t6unsy4NmWRWTlSnx/+lPrYUYT0fXr8f3pT0RWroyt7BARERERERERERGRLqVAYwCYOXMmRx99dLefd/bs2UyaNKnbz9se8ZUZ9c88A+Fw+94cDlP/zDNYFRW9OtR49913MQyDqqqqHjn/ypUrMQyDhQsX9sj5RUREREREREREpH8YkIGGYRhbfMyePbunh9it4hPe8ceQIUOYMWMGy5cvb/MxDMPgxRdf7LpBdhXDwD9vXvvDjLhwGP8//gGG0emhzJw5s8XP47Rp0zp97K0pKSnBMAw+/vjjlO2XXHIJBx54YJefX0RERERERERERGRrBmQPjdKkskLPPvss1113HUuWLElsy87OTvyzbdtEo1Gczp65VeFwGJfL1S3nWrJkCTk5OSxdupSzzz6b6dOn8+WXX+JwOLrl/N3NjkaJLFnS5jJTrYmuX0/ku+9wbrcdRifv1bRp03j88cdTtnk8nk4ds628Xi9XX3017733XrecT0REREREREREpBnDSMuXh3ut/nxt3WBArtAYOnRo4pGXl4dhGInn3333HTk5Obz22mvsvvvueDwe3n//fZYtW8ZRRx3FkCFDyM7O5kc/+hFvvvlm4pi/+c1v2GuvvZqda+LEidx4442J548++ig77LADXq+X7bffngceeCDxWrw0z7PPPsuUKVPwer089dRTrFq1iunTp1NQUEBWVhY77bQTr776KgDRaJRf/epXjB07loyMDCZMmMA999zTofsyePBghg0bxgEHHMB1113Ht99+yw8//MB///tfDj30UIqLi8nLy2PKlCl8/vnnifeVlJQAcMwxx2AYRuJ53JNPPklJSQl5eXmceOKJ1NbWdmh86WY4HAQ/+ywtxwp99lmnwwyIhRfJn8+hQ4dSUFCQeN0wDB599FGOOeYYMjMzGT9+PC+99FLKMV599VW22247MjIyOOigg1i5cmWbzn322Wfz8ccfJz5bLbEsixtvvJGRI0fi8XiYNGkS8+fPT9nn008/ZbfddsPr9bLHHnvwxRdfNDvO119/zWGHHUZ2djZDhgzhF7/4BWVlZW0ap4iIiIiIiIiIiAxMAzLQaItrrrmG2267jcWLF7Prrrvi8/k4/PDDeeutt/jiiy+YNm0a06dPZ/Xq1QCccsopfPrppyxbtixxjG+++YYvv/ySk08+GYCnnnqK6667jptvvpnFixdzyy23MGvWLJ544olm5/71r3/N4sWLmTp1KhdccAHBYJD//Oc/fPXVV9x+++2JVSSWZTFy5Eief/55vv32W6677jp+85vf8Nxzz3Xq+jMyMgAIhULU1tZy+umn8/777/Pxxx8zfvx4Dj/88EQw8d///heAxx9/nNLS0sRzgGXLlvHiiy/y8ssv8/LLL/Pee+9x2223dWps6WJbFtE1a9JyrMjq1d3WR+OGG27g5z//OV9++SWHH344p5xyChUVFQCsWbOGY489lunTp7Nw4ULOPPNMrrnmmjYdd+zYsZx77rlce+21WK1cyz333MNdd93FnDlz+PLLL5k6dSpHHnkkS5cuBcDn8/Gzn/2MHXfckf/973/Mnj2bK664IuUYVVVVHHzwwey222589tlnzJ8/n40bN/Lzn/+8E3dFRERERERERERE+ruuraN0992xx9ZMngxNvmXOkUdC0iqAVl12WeyRZjfeeCOHHnpo4nlhYSETJ05MPL/pppv4xz/+wUsvvcSFF17ITjvtxMSJE3n66aeZNWsWEAsw9tprL7bddlsArr/+eu666y6OPfZYIDaB/O233/Lwww9z+umnJ459ySWXJPYBWL16NTNmzGCXXXYBYJtttkm85nK5uOGGGxLPx44dy0cffcRzzz3X4Qni0tJS5syZw4gRI5gwYULivHF/+tOfyM/P57333uNnP/sZgwYNAiA/P5+hQ4em7GtZFnPnziUnJweAX/ziF7z11lvcfPPNHRpbOllVVRCJpOdgkQhWVRWOwsJOHebll19OKXkGsdU/v/nNbxLPZ86cyUknnQTALbfcwr333sunn37KtGnTePDBBxk3bhx33XUXABMmTEiEYG3xu9/9jscff5ynnnqKX/ziF81enzNnDldffTUnnngiALfffjvvvPMOf/jDH7j//vt5+umnsSyLxx57DK/Xy0477cTatWs577zzEse477772G233bjlllsS2/785z8zatQovv/+e7bbbrs23i0REREREREREREZSLo20KipgXXrtr7fqFHNt23e3Lb31tS0f1xtsMcee6Q89/l8zJ49m1deeYXS0lIikQh+vz+xQgNiqzT+/Oc/M2vWLGzb5m9/+xuXNYQtdXV1LFu2jF/96lecddZZifdEIhHy8vK2eO6LL76Y8847j3//+98ccsghzJgxg1133TXx+v3338+f//xnVq9ejd/vJxQKMWnSpHZf88iRI7Ftm/r6eiZOnMgLL7yA2+1m48aN/O53v+Pdd99l06ZNRKNR6uvrU669NSUlJYkwA2DYsGFs2rSp3WPrEsFgrzveQQcdxIMPPpiyrbBJSJL8s8/KyiI3NzdxTxcvXtys9Nnee+/d5vMPGjSIK664guuuu44TTjgh5bWamhrWr1/Pvvvum7J93333ZdGiRYnz77rrrni93lbPv2jRIt55551mwQ3EVvQo0BAREREREREREZGWdG2gkZsLI0Zsfb+Gb/g329aW9+bmtn9cbZCVlZXy/IorruCNN95gzpw5bLvttmRkZHDccccRCoUS+5x00klcffXVfP755/j9ftasWZOYFPb5fAA88sgjzSacmzbdbnruM888k6lTp/LKK6/w73//m1tvvZW77rqLiy66iGeeeYYrrriCu+66i7333pucnBzuvPNOPvnkk3Zf84IFC8jNzWXw4MEpIcTpp59OeXk599xzD2PGjMHj8bD33nunXHtrmjY0Nwyj1XJG3S7dzbbTcLysrKzEip7WdPU9veyyy3jggQdS+rukk8/nY/r06S2uGhk2bFiXnFNERERERERERPoIw4w9+qv+fG3doGsDjc6Ug2pagqqHffDBB8ycOZNjjjkGiE3KNm22PHLkSKZMmcJTTz2F3+/n0EMPZfDgwQAMGTKE4cOHs3z5ck455ZR2n3/UqFGce+65iR4HjzzyCBdddBEffPAB++yzD+eff35i3+Q+Hu0xduxY8vPzm23/4IMPeOCBBzj88MOBWJ+Gpg2cXS4X0Wi0Q+ftKWZ+Pjid6Sk75XTGjtfDdthhh2ZNwj/++ON2HSM7O5tZs2Yxe/ZsjjzyyMT23Nxchg8fzgcffMCUKVMS2z/44AP23HPPxPmffPJJAoFAYpVG0/NPnjyZF154gZKSEpzOrv0VJCIiIiIiIiIiIv2H4qA2Gj9+PPPmzWPhwoUsWrSIk08+ucVvxZ9yyik888wzPP/8882CixtuuIFbb72Ve++9l++//56vvvqKxx9/nLu30mfkkksu4fXXX2fFihV8/vnnvPPOO+ywww6JcX322We8/vrrfP/998yaNSulKXc6jB8/nieffJLFixfzySefcMoppySahseVlJTw1ltvsWHDBiorK9N6/q5imCaOlsqddYBz9GgMs/P/OgWDQTZs2JDyaBoebcm5557L0qVLufLKK1myZAlPP/00c+fObfc4zj77bPLy8nj66adTtl955ZXcfvvtPPvssyxZsoRrrrmGhQsX8utf/xqAk08+GcMwOOuss/j222959dVXmTNnTsoxLrjgAioqKjjppJP473//y7Jly3j99dc544wz+lwoJiIiIiIiIiIiIt1HgUYb3X333RQUFLDPPvswffp0pk6dyuTJk5vtd9xxx1FeXk59fT1HH310ymtnnnkmjz76KI8//ji77LILU6ZMYe7cuYwdO3aL545Go1xwwQXssMMOTJs2je222y5RDuicc87h2GOP5YQTTmCvvfaivLw8ZbVGOjz22GNUVlYyefJkfvGLX3DxxRcnVp7E3XXXXbzxxhuMGjWK3XbbLa3n7yp2NIqnSb+SjnLvsQd2Gibj58+fz7Bhw1Ie++23X5vfP3r0aF544QVefPFFJk6cyEMPPZTSfLutXC4XN910E4FAIGX7xRdfzGWXXcbll1/OLrvswvz583nppZcYP348EFvd8a9//YuvvvqK3Xbbjd/+9rfNSkvFV3lEo1F++tOfsssuu3DJJZeQn5+PmYZQSERERERERERERPonw7ZtuzMHCAQCrFixgrFjx6Y0AhbpC2zbpu7RR4muX9/hYziGDyfrzDMxDCONI5O20u8gEREREREREZG+r6amhry8PDx7Xo7hTHPv217EjgQJfnoX1dXV5HZRf+j+TF+HloHNtsk45hho0mi7zVyu2Ps7lwuKiIiIiIiIiIiIyFYo0JABzTBNzMJCMk88sf2hhstF5oknYhYWpqV/hoiIiIiIiIiIiIi0TrOwMuAZpomzpITss8/GMXx4m97jGD6c7LPPxllSojBDREREREREREREpBs4e3oAIr1BfKVG1plnEvnuO4L//S/RNWsgEmncyenEOXo07j32wLn99mDbCjNEREREREREREREuokCDZEG8XDCud12uHbYAduysKqqIBgEjwczPx/DNLGj0VgDcDUBFxERERERERERSS/DjD36q/58bd0gbYGGZVnpOpRIjzIcjtj/miaOwsJWX5fewVZDdhERERERERERkQGh04GG2+3GNE3Wr1/PoEGDcLvdsW+vi4h0Mdu22bx5M4Zh4GpvU3cRERERERERERHpUzodaJimydixYyktLWX9+vXpGJOISJsZhsHIkSNxaOWMiIiIiIiIiIhIv5aWklNut5vRo0cTiUSIRqPpOKSISJu4XC6FGSIiIiIiIiIi/UV/713bn6+tG6Sth0a85IvKvoiIiIiIiIiIiIiISLqppbqIiIiIiIiIiIiIiPR6CjRERERERERERERERKTXU6AhIiIiIiIiIiIiIiK9Xtp6aIiIiIiIiIiIiIiIdIphxh79VX++tm6guyciIiIiIiIiIiIiIr2eVmiIiPQCoahFOGoRtW2iNli2jWkYOAxwGAYuh4nboQxaREREREREREQGLgUaIiLdLBixqAqGqQyEqQyEqPSHCUStrb7P6zApzHCR73VT4HWR73HhcSrkEBERERERERGRgUGBhohIF7Nsm1JfgDU1fiqSwgsDsNtxnEDUYr0vSKkvmHhfPOQYlZvBsGwvpmGke/giIiIiIiIiIt3HMPp3nwnN3XSKAg0RkS7ij0RZWVXP8qp6glGrWYDRnjAjWfL7AlGLUl+Q9b4gHofJNvmZlORnkuF0dHzgIiIiIiIiIiIivZACDRGRNLJtmzJ/iGWV9ZT6AmkJMLZ6zob/DUYtFpf7+K7cx7BsL+MKMinOcGMo+RcRERERERERkX5AgYaISJpsrg/yxYZqfOFou8tJpZMNlPoCrPcFyHY52G1oHoMyPT00GhERERERERERkfRQoCEi0kkRy+LrzbUsr6pPbOupMKPp+X3hKAvWVDAuP5OdBuXgNPtxDUoREREREREREenXFGiIiHTC5vogn5VW4Y9YPT2ULVpWVc96X4A9huVrtYaIiIiIiIiI9F6mEXv0V/352rqBAg0RkQ5oaVVGb+ePWFqtISIiIiIiIiIifZYCDRGRdqoKhPloXUWvX5XRmvhqjb1HFJLvdfX0cERERERERERERNpEX88VEWmH8voQ760uJ9BHw4y4QMTivdXllNeHenooIiIiIiIiIiIibaIVGiIibbShLsDH6yqxerrjdxrYQNS2WbC2nL1HFDIkS301RERERERERKQXMMzYo7/qz9fWDXT3RETaYGNdkI/W9o8wI5llw4drK9hYF+zpoYiIiIiIiIiIiGyRAg0Rka0oqw/x0boK+lmWkWADH62rUPkpERERERERERHp1RRoiIhsQVUgzAdrK/rdyoymLBveX1tBVSDc00MRERERERERERFpkQINEZFWRCyLj9ZVYNn9PM1oYNk2H62rIGL17YbnIiIiIiIiIiLSP6kpuIhIK77eXIs/MnAm923AH7H4ZnMtE4fk9fRwRERERERERGQgMozYo7/qz9fWDbRCQ0SkBZvrgyyvqu/pYfSIZVX1bK5Xk3AREREREREREeldFGiIiDQRsSw+K63q6WH0qM9Kq1R6SkREREREREREehUFGiIiTQy0UlMtiZeeEhERERERERER6S3UQ0NEJMlALjXV1LKqeobneBmU6enpoYiIiIiIiIjIQGGYsUd/1Z+vrRvo7omINLBtmy82VPf0MHqVLzZUY9t2Tw9DREREREREREREgYaISFyZP4QvHO3pYfQqvnCUMn+op4chIiIiIiIiIiKiQENEJG5ZZT1GTw+ilzGA5ZUqwSUiIiIiIiIiIj1PgYaICOCPRCn1BVBxpVQ2sN4XwB/RyhUREREREREREelZagouIgKsrKpXmNEKm9j92aE4p6eHIiIiIiIiIiL9nWHEHv1Vf762bqAVGiIy4Fm2zfIqlVXakuVV9VhqDi4iIiIiIiIiIj1IgYaIDHilvgDBqNXTw+jVglGLUl+wp4chIiIiIiIiIiIDmAINERnw1tT41Qx8KwxgTY1WsYiIiIiIiIiISM9RDw0RGfAq/GH1z9gKG6gIhHt6GCIiIiIiIiLS3xlm7NFf9edr6wa6eyIyoAUjFgGVm2qTQMRSaS4REREREREREekxCjREZECrCmrVQXtUaZWGiIiIiIiIiIj0EAUaIjKgVQbC6p/RRgYKNEREREREREREpOeoh4aIDGhVgZD6Z7SRDVQGQj09DBERERERERHpzwwj9uiv+vO1dQOt0BCRHhOJRLjzzjvZeeed8Xq9FBYWctBBB/H555932xgq/B1bcfDkXTczY/vhPPvHOSnbn/3jHGZsP7zVR2etXb6UGdsP59yD9+zQ+5d++QW/O/UYTpk8npN3G8cFP92Hv951S5vf39r9+sMf/sDs2bOpqqrq0LhERERERERERES2Ris0RKTHnHDCCcybN4/x48dz22234XK5ePvtt/n666+ZPHlyl58/FE1/Q/C9p/6MEdtsC8Df7r2TDatWcNz5lzBq3HYt7h+NRHA4u+dXsW3b3HbBGQTq6jjx4ivJzMlh3fIfqKksb/MxAlGLUNTC7UjNw//whz+watUqZs6cSX5+fppHLiIiIiIiIiIiohUaItJDFixYwLx588jLy+PDDz/kkksu4YILLuCFF17g1FNPBeCMM85gyJAhuN1uhg4dysyZM6mtrQVg9uzZGIbBySefzAEHHEBubi6HHXYYGzdubPWcTY/3yzNm4vf5gMaVFXdfdm5iBcN1px1HdUVssr+6vIybz/kFJ+82jt+degyb161t8Ryjt9ue/Y44mv2OOJqc/AIAdtlrP/Y74mjyiwczY/vhXDVjGnN+fTan7r4di//3Ka899TjnHPwjTtx1LKftuQM3/PIE1i5bmjjmCw/dyy/33ZWzDpjM+y+/2Oycbz7/FJdMP4iTJm3D+YfuzYuP3t/i2GqrKqjavInM7BwmH3AwP5lxEqddOYvz/+8uAJ67/25mbD+cV/7yKBALW36576784kfbE6iv551/PMcFU/clJzOD/Px8fvzjH7N582ZKSkpYtWoVAGPHjsVoWDq5atUqfv7znzNkyBDy8/M57LDDWLx4MQBz587FMAx+8pOf8NOf/pTs7GymT5/OggUL2HnnncnJyeGss85KjP2OO+5g9OjRuN1uioqKOOCAA1r9OYuIiIiIiIiISP+kQENEesTHH38MwAEHHEBxcXHKa6YZ+9W0yy67cOONN/KHP/yBn/zkJzzxxBPcdtttKfu+9tprnHDCCUydOpX58+dzwQUXAFBZWUlZWRllZWXU19e3eLynnnySeY/cl3K8z997m71/egRjJuzAN59+yPynHgfgsZtn8fl7bzFpv4PYZ9p0vljwTsr7airLE49wKLjFa1/2zZdk5eYy85rrKR4+gvziwRx1xrn86nf/x9STTufrTz7kgd9dDsAXC97l6T/chtPl4vgLLuPb/36ccqwPXnuJB2ddSW5BEceffykjx43nyTk38+9n/9rsvLkFRZRsvyMVmzZw8eEHMPPHO3HXpefww1eLADjs5Jl4MjKY/7cnsG2bhR+8R3V5GVOOnIE3M5M/33Idwfp67r73Pv7v//6PCRMmEIlE+OMf/5j4Gd5777387W9/IxqNMn36dF555RVmzpzJpZdeyqeffsrhhx9OKNTYh2PBggVMmzaN8ePH8/LLL3P00Udz/vnnk5+fz6OPPsq7775LVVUVV199NTk5OTzyyCPMmjWLYcOGbfEei4iIiIiIiIhI/6OSUyLSK1mWxbJly3jiiSeoq6tLbG/aX+MXv/gFF1xwASeddBJ///vfef311wHYbbfdEqsGrr/+eq677roWj7fi269SjjflqBkccdqZuL0ZLPniMzasXgnAog/+A8BZs26mYPAQVn//HW881xganLH3Lol/vuCW33PwsSe0em1DR5dw3k2NvTe+/HAB8/50H5WbG1eXrPj264bzvgfAtJNm8tMTTmXMdtvzm5OOTOz38b9fAeCbTz/km08/bLxP773JT084tdm5b/zLC7zy5GN88Z93WP7tV3z42r/4/L23eOCNj8krKuagY05g/tNzWfTBe/znpRcA+OmJpwEwcpvxLP/2S16f/xqTJ+7KmWeeybBhw5g+fTpZWVmUlZUxffp0SkpKWLx4MV99Fbu3d9xxR+L8FRUVfPPNN4nnBx10EJdddhnl5eUsXLiQ4447jvPPP5+PPvqIv/71r/zwww/st99+jBo1ijVr1vD666+z8847c+2117Z6f0VERERERESkDzPM2KO/6s/X1g0UaIhIj9h7772B2Df0y8vLKSoqSrxmWRZvvvkmDzzwAOPGjWPOnDmsXbuWiy66CL/f36bjP/XUU4l9t9lmm1aPFwoEUt6XWxAbR7yvRTQaadP5rvvzM4l/Hr3thC3uWzSkcXVB0F/PIzdei2maXHDz3RQNHcat580kFAxs4QjNHXfeJez4ox8nnmfl5Dbbx7ZtPBmZ/PyCy/j5BZdRV1PNlTOmsXHNKtavXEZeUTHTzziHfz/7JC8++gDfL/ofO+yxF6PHx65n9txn+fSt17FKV/D3v/+dG264gX/+858ceeSRiTJTTY0ePZrHHnss8dyyLEpKSli0KLYqpKAgVpbL5XKlPHc4HECscbzT6WTRokW8+OKLfP311zz88MPMmjWLzz77jN12261d90lERERERERERPouBRoi0iP2228/jj32WObNm8e+++7Leeedh8fj4e2332b69OkMGTIEgEAgwKZNm3j++edbPM6TTz7JhAkTePfddwGYOnUqAPvuu2/Kfj/88EObjteaSftN4f1XXuSRm37LznvtwwevvZTy+sR9Ot7TwTAMopEIvuoqliz8LKVk1aT9pvCvuQ8z/29zyc4v4P2X/5Hy3h//9Ag+fO1fvP/KixQOGYoVjfLtZx8zZsKObLvLpJR9A/X1XDh1H/Y74mhGjtsOf52P6vLNuL3eRCPzoaPGsNehh/PR/H8BMLVhdQbAQ9dfzbiddmXPHXdkxfdL+Oabb1i9ejUAhYWFrFy5krlz57LnnnsydepUdt55Z77++mvmzZvHnnvuyYoVK/jrX//KsmXL2nV/amtrueCCC9h3332ZNGkSH3/8MatXr2bdunUKNEREREREREREBhCtbxGRHvPss89y++2343A4uOqqq7j66qspLS1lxx135NBDD+Xss8+mqqqKm2++ORFUNPWzn/2MZ599ltdff51p06Zx3333tbhfW4/Xml/+5kZ2O+BgFn3wHh+8+k923Xv/dl9vSzwZmZw56xZyCgr5+0P3UDh4aKKZOMCk/Q7k5EuuIRwK8cLD97DtrpNS3r/vYUdy3k134vZ4mXvbbJ794xxqKirYbuLkZudyud1M2u8g/vfuWzx+63U8+8c5jNhmPFfe+2hiZQrAUb88F4DcwiJ+/NMjEtvDwSD/ePR+Lj73HD766CNOPfVUZs6cCcDVV1/N0KFDueGGG7jssstwOBy8/PLLnHjiicybN4/zzjuPp59+mkMOOaTd98jpdLJp0yZmz57NL3/5S5YvX87FF1/MtGnT2n0sERERERERERHpuwzbtu2eHoSISHvNnj2bG264geuvv57Zs2d36Bh1oQivr9ic3oH1cauWLOaL99/hyTv/j+POv4STLr6q2T5Txw4iy60FfiIiIiIiIiKSPjU1NeTl5eE55BYMp7enh9Nl7EiA4Ju/obq6mtzc5iXDZcs0IyUiA5bLoUVqTT32f79jycLPmDzlJxz9qwta3Ef3TUREREREREREeoJmpUSkT5o9eza2bXd4dQaA22Hi1eR8ihuffIFnv1rFbx9+koysrGavex0mbt0zEREREREREZFuc//991NSUoLX62Wvvfbi008/bXXfAw88EMMwmj2OOCJWVjwcDnP11Vezyy67kJWVxfDhwznttNNYv359ynFKSkqaHeO2227r0utsC81KiciAVpjh6ukh9BkGul8iIiIiIiIiIt3p2Wef5bLLLuP666/n888/Z+LEiUydOpVNmza1uP+8efMoLS1NPL7++mscDgfHH388APX19Xz++efMmjWLzz//nHnz5rFkyRKOPPLIZse68cYbU4510UUXdem1toVKTonIgJbvdVPqC6JmQm1T4HX39BBERERERERERAaMu+++m7POOoszzjgDgIceeohXXnmFP//5z1xzzTXN9i8sLEx5/swzz5CZmZkINPLy8njjjTdS9rnvvvvYc889Wb16NaNHj05sz8nJYejQoem+pE7RCg0RGdAKvC6FGW1k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icTirD/5VBKpNLnREYxqhe6VqwH40x238PtfX88N//e1pvu4/ptf4Tff+xZf/4RnmXTGeReE/v79L36aG3/wbX7wX58G4OwLLmbz5s2cdNJJbN++nfe+97184hOf4Ne//jWdnZ08+9nPnna8bW1tANx2221897vf9e2pXNf1QqOncW454/wLiSUSPPyHO3jy4QcZ2r+Xe2/6NTd85+sAfO3j/0Lf7p30rlnHivUbABju23/wCQwQSyQ4/fwLMSoVbvrRdxjp72PHQw/w9Y//K7Z5cCukVNbr4JgYHebmH3+PHQ8/OGWbZ158GYqicO/Nv2Hvjm0M7NnNHdf/lDt/eR2xRIIzzr8IyzT4xFtex80/+i7f+ewneOrRhzj9/AuJxuPc+cvruP4bX+HL//w+SvkcJ591LqlsC5/6949x7733smbNGk4//XQA9uzZA0Amk+FNb3oTjzzyCLt37+aNb3yjL0a8613vYvv27WzatIkTTjjBf58Qgtbatfrxj37A97//fZLJJJdddhnlcplrr72Wffv2cc899/Cud70L05wqCkY071NlT2Nn9Ll/fjfjI0OsWr+JzmWrQmOeT4QQfvYDeJ0YQYugqLa0rKfA66LozTayG+qixnxmNihCENMgqD2YNhiWO6s8kURU5bSVGbqmWFDljlkLqjqaIujKRFjbESMda3h4WY7LQM5g90iFQsU6orksEolEIpFIJBKJRHLcII6DH8khIzs0JMck4xXjqMzPAIjFE2x94D5u+ekPMKpVOpet4Kq3vpdEKs05z3shd//2V/zp9pv54X//Jyef9SwG9u6eso8zL7iE33zvGwzs2c15l7+UV77l3aG/n3H+Bfzsf/+H8eEhnv+q1/K8q16Nqqr8/Oc/593vfjf/+7//i2manH/++XziE5+gvb09VMizHRcXbyX4n13xCr7xjW9y++2387vf/Y5bbr+LZzzzbH9bcxrnr+4Vq/jHL3+b7372E/z02v/Ctix616zlopc1bKt+9a2vMj48RDSe4MwLn8uLX/s3c57Pt338c3z7P/+d+2+7iXtv+g0tHZ2ccOZZJLNZ2L93xvcmUmle8rqr+c13v8kX3/8OLr3y1Ww45bTQNpvPOJP3fP4r/OhLn+M7n/k4iqqyYt1GXviXXifJ3338s3zns5/gj7/7Df/zz++jvaeXZ132InpWrub9X/om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yuMT+pU3v1MjpbKu+cBH9ZF3vkWfuu4v1ajXNHX4iJ7yrB/r+ThLv24AAAAAAAAAhst1112n17zmNfqTP/kTXXbZZbr22mv17Gc/W3feeaf279/f83PK5bLuvPPO1s+Xbro5evRo188/+clP6mUve5le8IIXdL3/DW94g17xile0fl4qlTb7cjbNWMveGuysxUaof/zBiW19zs984jq993VX60ee91N69Vuv3dbn3irPPn9KIxkySQAAAAAAAOx+c3NzGh0d1XfvPalSubzTl3PWzM/N6ZHnTmp2dlblPl7nZZddpic/+cn64z/+Y0lJv++RI0f06le/Wr/1W7+17OM//OEP66qrrtLMzEzf1/S85z1P8/Pz+vSnP91633nnnaerrrpKV111Vd+Psx1YOYUd57t8G24EXzcAAAAAAABgeDUaDX3ta1/TM57xjNb7HMfRM57xDN18880rft7CwoIe9rCH6ciRI/rxH/9x3XbbbSt+7PHjx3XDDTfoZS972bJfe+tb36qJiQk9/vGP19ve9jaF4eb7iTeL27ux4zKuo5zrqBbF2/acT3/+C/X0579w255vq+VcRxkCDQAAAAAAAGBXmpub6/p5NptVNpvtet/JkycVRZGmp6e73j89Pa077rij5+NedNFF+tCHPqRLLrlEs7Ozevvb364rrrhCt912m84555xlH//nf/7nKpVKev7zn9/1/l/91V/VE57wBI2Pj+umm27Sa1/7Wh09elTvfOc7N/JytwyBBgbCeN7Xgwv1nb6MXcEo+XoBAAAAAAAAQ8c034ZV87UdOXKk692/+7u/q9e//vWbfvjLL79cl19+eevnV1xxhS6++GK9//3v1xvf+MZlH/+hD31IL3rRi5YVh7/mNa9p/fiSSy5RJpPRL//yL+stb3nLsuBlOxFoYCCM5TI6ulAXhS792ZfL7PQlAAAAAAAAANig++67r6tDo1dIMDk5Kdd1dfz48a73Hz9+XAcOHOjreXzf1+Mf/3h973vfW/Zrn//853XnnXfquuuuW/NxLrvsMoVhqLvvvlsXXXRRX899NrCzBgNhX84nzOiTlTSWY0IDAAAAAAAA2K3K5XLXW69AI5PJ6IlPfGJXWXccx/r0pz/dNYWxmiiK9O1vf1sHDx5c9msf/OAH9cQnPlGXXnrpmo/zjW98Q47jaP/+/X0979nChAYG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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "query = \"what is the main cause of climate change?\"\n", "response = graph_rag.query(query)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--graph-rag)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/graphrag_with_milvus_vectordb.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "# Graph RAG with Milvus Vector Database\n", "\n", "## Overview\n", "\n", "### What You'll Learn\n", "This notebook demonstrates an innovative approach to **Graph RAG (Retrieval-Augmented Generation)** that combines the power of knowledge graphs with vector databases to dramatically improve question-answering performance, especially for complex multi-hop queries. By the end of this tutorial, you'll understand how to build a Graph RAG system that can answer questions requiring multiple logical steps and relationship traversals.\n", "\n", "### The Problem: Limitations of Traditional RAG\n", "Traditional RAG systems, while powerful, struggle with:\n", "- **Multi-hop questions**: Queries requiring multiple logical steps (e.g., \"What contribution did the son of Euler's teacher make?\")\n", "- **Complex entity relationships**: Understanding how different entities connect and relate to each other\n", "- **Context fragmentation**: Important relationships may be scattered across different text passages\n", "- **Semantic gaps**: Simple similarity search may miss logically relevant but semantically distant information\n", "\n", "### The Solution: Graph RAG with Vector Database\n", "This notebook presents a **unified approach** that achieves Graph RAG capabilities using **only a vector database** (Milvus), eliminating the need for separate graph databases while maintaining superior performance. Here's what makes this approach special:\n", "\n", "**Key Innovation**: Instead of storing explicit graph structures, we embed entities and relationships as vectors and use intelligent retrieval and expansion techniques to reconstruct graph-like reasoning paths.\n", "\n", "### Key Benefits\n", "1. **Simplified Architecture**: Single vector database instead of vector DB + graph DB combination\n", "2. **Superior Multi-hop Performance**: Handles complex queries requiring multiple relationship traversals\n", "3. **Scalable**: Leverages Milvus's distributed architecture for billion-scale deployments\n", "4. **Cost-effective**: Reduces infrastructure complexity and operational overhead\n", "5. **Flexible**: Works with any text corpus - just extract entities and relationships\n", "\n", "### Methodology Overview\n", "Our approach consists of four main stages:\n", "\n", "1. **Offline Data Preparation**\n", " - Extract entities and relationships (triplets) from your text corpus\n", " - Create three vector collections: entities, relationships, and passages\n", " - Build adjacency mappings between entities and relationships\n", "\n", "2. **Query-time Retrieval**\n", " - Retrieve similar entities and relationships using vector similarity search\n", " - Use Named Entity Recognition (NER) to identify query entities\n", "\n", "3. **Subgraph Expansion** \n", " - Expand retrieved entities/relationships to their neighborhood using adjacency matrices\n", " - Support multi-degree expansion (1-hop, 2-hop neighbors)\n", " - Merge results from both entity and relationship expansion paths\n", "\n", "4. **LLM Reranking**\n", " - Use large language models to intelligently filter and rank candidate relationships\n", " - Apply Chain-of-Thought reasoning to select most relevant relationships\n", " - Return final passages for answer generation\n", "\n", "### Architecture Diagram\n", "The following diagram illustrates the complete workflow:\n", "\n", "![](../images/graph_rag_with_milvus_1.png)\n", "\n", "**Why This Works**: By representing both entities and relationships as vectors, we can leverage semantic similarity for initial retrieval, then use graph-theoretical expansion to discover indirect relationships, and finally apply LLM reasoning to filter for relevance. This creates a \"best of both worlds\" system that combines semantic search, graph traversal, and intelligent reasoning.\n", "\n", "---\n", "\n", "## Technical Implementation\n", "\n", "In this section, we'll implement the Graph RAG system described in our methodology overview. The implementation follows our four-stage approach: data preparation, vector storage, query processing, and intelligent reranking.\n", "\n", "## Prerequisites\n", "\n", "To complete this demo, you need a vector database. You can get a fully-managed Milvus vector database for free by [signing up Zilliz Cloud](https://cloud.zilliz.com/signup?utm_source=github&utm_medium=referral&utm_campaign=Nir-250512). Milvus is an open-source vector database that provides high-performance vector similarity search. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Install the following dependencies:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "! pip install --upgrade --quiet pymilvus numpy scipy langchain langchain-core langchain-openai tqdm" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "source": [ "> If you are using Google Colab, to enable dependencies just installed, you may need to **restart the runtime** (click on the \"Runtime\" menu at the top of the screen, and select \"Restart session\" from the dropdown menu).\n" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "source": [ "We will use the models from OpenAI. You need to prepare the [`OPENAI_API_KEY`](https://platform.openai.com/docs/quickstart) as an environment variable." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "import os\n", "\n", "os.environ[\"OPENAI_API_KEY\"] = \"sk-***********\"" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "Import the necessary libraries and dependencies." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "\n", "from collections import defaultdict\n", "from scipy.sparse import csr_matrix\n", "from pymilvus import MilvusClient\n", "from langchain_core.messages import AIMessage, HumanMessage\n", "from langchain_core.prompts import ChatPromptTemplate, HumanMessagePromptTemplate\n", "from langchain_core.output_parsers import StrOutputParser, JsonOutputParser\n", "from langchain_openai import ChatOpenAI, OpenAIEmbeddings\n", "from tqdm import tqdm" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "Find your Public Endpoint and Token (i.e., API Key) on the Zilliz Cloud page." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](../images/zilliz_interface.png)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "# The `uri` and `token` correspond to the Public Endpoint and Token of your Zilliz Cloud (fully-managed Milvus) cluster.\n", "milvus_client = MilvusClient(\n", " uri=\"YOUR_ZILLIZ_PUBLIC_ENDPOINT\", \n", " token=\"YOUR_ZILLIZ_TOKEN\"\n", ")\n", "\n", "llm = ChatOpenAI(\n", " model=\"gpt-4o\",\n", " temperature=0,\n", ")\n", "embedding_model = OpenAIEmbeddings(model=\"text-embedding-3-small\")" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "## Offline Data Loading\n", "\n", "### Understanding the Data Model\n", "\n", "Before diving into the implementation, it's crucial to understand how we structure our data to enable graph-like reasoning with vectors. Our approach transforms traditional text documents into three interconnected components:\n", "\n", "1. **Entities**: The \"nodes\" of our conceptual graph - people, places, concepts, etc.\n", "2. **Relationships**: The \"edges\" connecting entities - these are full triplets (subject-predicate-object)\n", "3. **Passages**: The original text documents that provide context and detailed information\n", "\n", "**Why This Structure Works**: By separating entities and relationships into distinct vector collections, we can perform targeted searches for different aspects of a query. When a user asks \"What contribution did the son of Euler's teacher make?\", we can:\n", "- Find entities related to \"Euler\" \n", "- Find relationships that connect teacher-student and parent-child concepts\n", "- Expand the graph to discover indirect connections\n", "- Retrieve the most relevant passages for final answer generation\n", "\n", "### Data Preparation\n", "\n", "We will use a nano dataset which introduce the relationship between Bernoulli family and Euler to demonstrate as an example. The nano dataset contains 4 passages and a set of corresponding triplets, where each triplet contains a subject, a predicate, and an object.\n", "\n", "**Triplet Structure**: Each relationship is represented as a triplet [Subject, Predicate, Object]. For example:\n", "- `[\"Jakob Bernoulli\", \"was the older brother of\", \"Johann Bernoulli\"]` captures a family relationship\n", "- `[\"Johann Bernoulli\", \"was a student of\", \"Leonhard Euler\"]` captures an educational relationship\n", "\n", "In practice, you can use any approach to extract the triplets from your own custom corpus. Common methods include:\n", "- **Named Entity Recognition (NER)** + **Relation Extraction** models\n", "- **Open Information Extraction** systems like OpenIE\n", "- **Large Language Models** with structured prompting\n", "- **Manual annotation** for high-precision domains" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "nano_dataset = [\n", " {\n", " \"passage\": \"Jakob Bernoulli (1654–1705): Jakob was one of the earliest members of the Bernoulli family to gain prominence in mathematics. He made significant contributions to calculus, particularly in the development of the theory of probability. He is known for the Bernoulli numbers and the Bernoulli theorem, a precursor to the law of large numbers. He was the older brother of Johann Bernoulli, another influential mathematician, and the two had a complex relationship that involved both collaboration and rivalry.\",\n", " \"triplets\": [\n", " [\"Jakob Bernoulli\", \"made significant contributions to\", \"calculus\"],\n", " [\n", " \"Jakob Bernoulli\",\n", " \"made significant contributions to\",\n", " \"the theory of probability\",\n", " ],\n", " [\"Jakob Bernoulli\", \"is known for\", \"the Bernoulli numbers\"],\n", " [\"Jakob Bernoulli\", \"is known for\", \"the Bernoulli theorem\"],\n", " [\"The Bernoulli theorem\", \"is a precursor to\", \"the law of large numbers\"],\n", " [\"Jakob Bernoulli\", \"was the older brother of\", \"Johann Bernoulli\"],\n", " ],\n", " },\n", " {\n", " \"passage\": \"Johann Bernoulli (1667–1748): Johann, Jakob’s younger brother, was also a major figure in the development of calculus. He worked on infinitesimal calculus and was instrumental in spreading the ideas of Leibniz across Europe. Johann also contributed to the calculus of variations and was known for his work on the brachistochrone problem, which is the curve of fastest descent between two points.\",\n", " \"triplets\": [\n", " [\n", " \"Johann Bernoulli\",\n", " \"was a major figure of\",\n", " \"the development of calculus\",\n", " ],\n", " [\"Johann Bernoulli\", \"was\", \"Jakob's younger brother\"],\n", " [\"Johann Bernoulli\", \"worked on\", \"infinitesimal calculus\"],\n", " [\"Johann Bernoulli\", \"was instrumental in spreading\", \"Leibniz's ideas\"],\n", " [\"Johann Bernoulli\", \"contributed to\", \"the calculus of variations\"],\n", " [\"Johann Bernoulli\", \"was known for\", \"the brachistochrone problem\"],\n", " ],\n", " },\n", " {\n", " \"passage\": \"Daniel Bernoulli (1700–1782): The son of Johann Bernoulli, Daniel made major contributions to fluid dynamics, probability, and statistics. He is most famous for Bernoulli’s principle, which describes the behavior of fluid flow and is fundamental to the understanding of aerodynamics.\",\n", " \"triplets\": [\n", " [\"Daniel Bernoulli\", \"was the son of\", \"Johann Bernoulli\"],\n", " [\"Daniel Bernoulli\", \"made major contributions to\", \"fluid dynamics\"],\n", " [\"Daniel Bernoulli\", \"made major contributions to\", \"probability\"],\n", " [\"Daniel Bernoulli\", \"made major contributions to\", \"statistics\"],\n", " [\"Daniel Bernoulli\", \"is most famous for\", \"Bernoulli’s principle\"],\n", " [\n", " \"Bernoulli’s principle\",\n", " \"is fundamental to\",\n", " \"the understanding of aerodynamics\",\n", " ],\n", " ],\n", " },\n", " {\n", " \"passage\": \"Leonhard Euler (1707–1783) was one of the greatest mathematicians of all time, and his relationship with the Bernoulli family was significant. Euler was born in Basel and was a student of Johann Bernoulli, who recognized his exceptional talent and mentored him in mathematics. Johann Bernoulli’s influence on Euler was profound, and Euler later expanded upon many of the ideas and methods he learned from the Bernoullis.\",\n", " \"triplets\": [\n", " [\n", " \"Leonhard Euler\",\n", " \"had a significant relationship with\",\n", " \"the Bernoulli family\",\n", " ],\n", " [\"leonhard Euler\", \"was born in\", \"Basel\"],\n", " [\"Leonhard Euler\", \"was a student of\", \"Johann Bernoulli\"],\n", " [\"Johann Bernoulli's influence\", \"was profound on\", \"Euler\"],\n", " ],\n", " },\n", "]" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "We construct the entities and relations as follows:\n", "- The entity is the subject or object in the triplet, so we directly extract them from the triplets.\n", "- Here we construct the concept of relationship by directly concatenating the subject, predicate, and object with a space in between.\n", "\n", "We also prepare a dict to map entity id to relation id, and another dict to map relation id to passage id for later use.\n", "\n", "### Building the Knowledge Graph Structure\n", "\n", "The next step transforms our triplets into a searchable vector format while maintaining the graph connectivity information. This process involves several key decisions:\n", "\n", "**Entity Extraction Strategy**: We extract unique entities by collecting all subjects and objects from our triplets. This ensures we capture every entity mentioned in any relationship, creating comprehensive coverage of our knowledge domain.\n", "\n", "**Relationship Representation**: Rather than storing relationships as separate subject-predicate-object components, we concatenate them into natural language sentences. For example, `[\"Jakob Bernoulli\", \"was the older brother of\", \"Johann Bernoulli\"]` becomes `\"Jakob Bernoulli was the older brother of Johann Bernoulli\"`. This approach offers several advantages:\n", "- **Semantic richness**: The full sentence provides more context for vector embeddings\n", "- **Natural language compatibility**: LLMs can easily understand and reason about complete sentences\n", "- **Reduced complexity**: No need to manage separate predicate vocabularies\n", "\n", "**Adjacency Mapping Construction**: We build two critical mapping structures:\n", "1. **`entityid_2_relationids`**: Maps each entity to all relationships it participates in (enables entity-to-relationship expansion)\n", "2. **`relationid_2_passageids`**: Maps each relationship to the passages where it appears (enables relationship-to-passage retrieval)\n", "\n", "These mappings are essential for the subgraph expansion process, allowing us to efficiently traverse the conceptual graph during query time." ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "entityid_2_relationids = defaultdict(list)\n", "relationid_2_passageids = defaultdict(list)\n", "\n", "entities = []\n", "relations = []\n", "passages = []\n", "for passage_id, dataset_info in enumerate(nano_dataset):\n", " passage, triplets = dataset_info[\"passage\"], dataset_info[\"triplets\"]\n", " passages.append(passage)\n", " for triplet in triplets:\n", " if triplet[0] not in entities:\n", " entities.append(triplet[0])\n", " if triplet[2] not in entities:\n", " entities.append(triplet[2])\n", " relation = \" \".join(triplet)\n", " if relation not in relations:\n", " relations.append(relation)\n", " entityid_2_relationids[entities.index(triplet[0])].append(\n", " len(relations) - 1\n", " )\n", " entityid_2_relationids[entities.index(triplet[2])].append(\n", " len(relations) - 1\n", " )\n", " relationid_2_passageids[relations.index(relation)].append(passage_id)" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "### Data Insertion\n", "\n", "Create Milvus collections for entity, relation, and passage. We create three separate Milvus collections, each optimized for different types of retrieval:\n", "\n", "1. **Entity Collection**: Stores vector embeddings of entity names and descriptions\n", " - **Purpose**: Enables entity-centric queries like \"find entities similar to 'Euler'\"\n", " - **Search pattern**: Direct semantic similarity to query entities\n", "\n", "2. **Relationship Collection**: Stores vector embeddings of complete relationship sentences \n", " - **Purpose**: Captures semantic patterns in relationships that match query intent\n", " - **Search pattern**: Finds relationships semantically similar to the entire query\n", "\n", "3. **Passage Collection**: Stores vector embeddings of original text passages\n", " - **Purpose**: Provides comparison baseline and detailed context for final answers\n", " - **Search pattern**: Traditional RAG-style document retrieval\n", "\n", "**Why Three Collections?** This separation allows for **multi-modal retrieval**:\n", "- If a query mentions specific entities, we retrieve through the entity collection\n", "- If a query describes relationships or actions, we retrieve through the relationship collection \n", "- We can combine results from both paths and compare against traditional passage retrieval\n", "\n", "**Embedding Consistency**: All collections use the same embedding model to ensure compatibility during similarity searches and result merging." ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "embedding_dim = len(embedding_model.embed_query(\"foo\"))\n", "\n", "\n", "def create_milvus_collection(collection_name: str):\n", " \"\"\"\n", " Create a new Milvus collection with specified configuration.\n", " \n", " This function creates a new Milvus collection for storing vector embeddings.\n", " If a collection with the same name already exists, it will be dropped first\n", " to ensure a clean state.\n", " \n", " Args:\n", " collection_name (str): The name of the collection to create.\n", " \"\"\"\n", " if milvus_client.has_collection(collection_name=collection_name):\n", " milvus_client.drop_collection(collection_name=collection_name)\n", " milvus_client.create_collection(\n", " collection_name=collection_name,\n", " dimension=embedding_dim,\n", " consistency_level=\"Strong\",\n", " )\n", "\n", "\n", "entity_col_name = \"entity_collection\"\n", "relation_col_name = \"relation_collection\"\n", "passage_col_name = \"passage_collection\"\n", "create_milvus_collection(entity_col_name)\n", "create_milvus_collection(relation_col_name)\n", "create_milvus_collection(passage_col_name)" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "Insert the data with their metadata information into Milvus collections, including entity, relation, and passage collections. The metadata information includes the passage id and the adjacency entity or relation id." ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Inserting: 100%|███████████████████████████████████| 1/1 [00:00<00:00, 1.02it/s]\n", "Inserting: 100%|███████████████████████████████████| 1/1 [00:00<00:00, 1.39it/s]\n", "Inserting: 100%|███████████████████████████████████| 1/1 [00:00<00:00, 2.28it/s]\n" ] } ], "source": [ "def milvus_insert(\n", " collection_name: str,\n", " text_list: list[str],\n", "):\n", " \"\"\"\n", " Insert text data with embeddings into a Milvus collection in batches.\n", " \n", " This function processes a list of text strings, generates embeddings for them,\n", " and inserts the data into the specified Milvus collection in batches for\n", " efficient processing.\n", " \n", " Args:\n", " collection_name (str): The name of the Milvus collection to insert data into.\n", " text_list (list[str]): A list of text strings to be embedded and inserted.\n", " \"\"\"\n", " batch_size = 512\n", " for row_id in tqdm(range(0, len(text_list), batch_size), desc=\"Inserting\"):\n", " batch_texts = text_list[row_id : row_id + batch_size]\n", " batch_embeddings = embedding_model.embed_documents(batch_texts)\n", "\n", " batch_ids = [row_id + j for j in range(len(batch_texts))]\n", " batch_data = [\n", " {\n", " \"id\": id_,\n", " \"text\": text,\n", " \"vector\": vector,\n", " }\n", " for id_, text, vector in zip(batch_ids, batch_texts, batch_embeddings)\n", " ]\n", " milvus_client.insert(\n", " collection_name=collection_name,\n", " data=batch_data,\n", " )\n", "\n", "\n", "milvus_insert(\n", " collection_name=relation_col_name,\n", " text_list=relations,\n", ")\n", "\n", "milvus_insert(\n", " collection_name=entity_col_name,\n", " text_list=entities,\n", ")\n", "\n", "milvus_insert(\n", " collection_name=passage_col_name,\n", " text_list=passages,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "## Online Querying\n", "\n", "### Understanding the Query Processing Pipeline\n", "\n", "The querying phase implements our core innovation: combining semantic vector search with graph traversal logic. This multi-stage process transforms a natural language question into relevant knowledge by following these steps:\n", "\n", "1. **Entity Identification**: Extract entities mentioned in the query using NER\n", "2. **Dual Retrieval**: Search both entity and relationship collections simultaneously \n", "3. **Graph Expansion**: Use adjacency information to discover indirect connections\n", "4. **LLM Reranking**: Apply intelligent filtering to select the most relevant relationships\n", "5. **Answer Generation**: Retrieve final passages and generate the response\n", "\n", "### Similarity Retrieval\n", "\n", "We retrieve the topK similar entities and relations based on the input query from Milvus.\n", "\n", "When performing the entity retrieving, we should first extract the query entities from the query text using some specific method like NER (Named-entity recognition). For simplicity, we prepare the NER results here. If you want to change the query as your custom question, you have to change the corresponding query NER list.\n", "In practice, you can use any other model or approach to extract the entities from the query.\n", "\n", "### Dual-Path Retrieval Strategy\n", "\n", "Our approach performs two parallel similarity searches:\n", "\n", "**Path 1: Entity-Based Retrieval**\n", "- **Input**: Extracted entities from the query (using NER) \n", "- **Process**: Find entities in our knowledge base similar to query entities\n", "- **Why NER?**: Many complex queries reference specific entities (\"Euler\", \"Bernoulli family\"). By identifying these explicitly, we can find direct matches and their associated relationships\n", "- **Example**: For \"What contribution did the son of Euler's teacher make?\", NER identifies \"Euler\" as a key entity\n", "\n", "**Path 2: Relationship-Based Retrieval** \n", "- **Input**: The complete query text\n", "- **Process**: Find relationships that semantically match the query's intent\n", "- **Purpose**: Captures the relational patterns and question structure\n", "- **Example**: The query pattern \"contribution did the son of X's teacher make\" matches relationship patterns about family connections and contributions\n", "\n", "**Benefits of Dual Retrieval**:\n", "- **Comprehensive coverage**: Entity path catches direct mentions, relationship path catches semantic patterns\n", "- **Redundancy for robustness**: If one path misses relevant information, the other might capture it\n", "- **Different granularities**: Entities provide specific anchors, relationships provide structural patterns" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "query = \"What contribution did the son of Euler's teacher make?\"\n", "\n", "query_ner_list = [\"Euler\"]\n", "# query_ner_list = ner(query) # In practice, replace it with your custom NER approach\n", "\n", "query_ner_embeddings = [\n", " embedding_model.embed_query(query_ner) for query_ner in query_ner_list\n", "]\n", "\n", "top_k = 3\n", "\n", "entity_search_res = milvus_client.search(\n", " collection_name=entity_col_name,\n", " data=query_ner_embeddings,\n", " limit=top_k,\n", " output_fields=[\"id\"],\n", ")\n", "\n", "query_embedding = embedding_model.embed_query(query)\n", "\n", "relation_search_res = milvus_client.search(\n", " collection_name=relation_col_name,\n", " data=[query_embedding],\n", " limit=top_k,\n", " output_fields=[\"id\"],\n", ")[0]" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "### Expand Subgraph\n", "\n", "We use the retrieved entities and relations to expand the subgraph and obtain the candidate relationships, and then merge them from the two ways. Here is a flow chart of the subgraph expansion process:\n", "![](../images/graph_rag_with_milvus_2.png)" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "Here we construct an adjacency matrix and use matrix multiplication to calculate the adjacency mapping information within a few degrees. In this way, we can quickly obtain information of any degree of expansion.\n", "\n", "### The Mathematics of Graph Expansion\n", "\n", "The subgraph expansion step is where our approach truly shines. Instead of storing an explicit graph database, we use **adjacency matrices** and **matrix multiplication** to efficiently compute multi-hop relationships. This mathematical approach offers several advantages:\n", "\n", "**Adjacency Matrix Construction**: We create a binary matrix where `entity_relation_adj[i][j] = 1` if entity `i` participates in relationship `j`, and 0 otherwise. This sparse representation captures the entire graph structure.\n", "\n", "**Multi-Degree Expansion via Matrix Powers**:\n", "- **1-degree expansion**: `entity_adj_1_degree = entity_relation_adj @ entity_relation_adj.T`\n", "- **2-degree expansion**: `entity_adj_2_degree = entity_adj_1_degree @ entity_adj_1_degree` \n", "- **n-degree expansion**: Computed by raising the 1-degree matrix to the nth power\n", "\n", "**Why This Works**: Matrix multiplication naturally implements graph traversal. When we multiply adjacency matrices, we're computing paths through the graph:\n", "- 1-hop: Directly connected entities/relationships\n", "- 2-hop: Entities connected through one intermediate entity \n", "- n-hop: Entities connected through (n-1) intermediate steps\n", "\n", "**Computational Efficiency**: Using sparse matrices and vectorized operations, we can expand subgraphs containing thousands of entities in milliseconds, making this approach highly scalable.\n", "\n", "**Dual Expansion Strategy**: We expand from both retrieved entities AND retrieved relationships, then merge the results. This ensures we capture relevant information regardless of whether the initial retrieval was more successful on the entity or relationship side." ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "# Construct the adjacency matrix of entities and relations where the value of the adjacency matrix is 1 if an entity is related to a relation, otherwise 0.\n", "entity_relation_adj = np.zeros((len(entities), len(relations)))\n", "for entity_id, entity in enumerate(entities):\n", " entity_relation_adj[entity_id, entityid_2_relationids[entity_id]] = 1\n", "\n", "# Convert the adjacency matrix to a sparse matrix for efficient computation.\n", "entity_relation_adj = csr_matrix(entity_relation_adj)\n", "\n", "# Use the entity-relation adjacency matrix to construct 1 degree entity-entity and relation-relation adjacency matrices.\n", "entity_adj_1_degree = entity_relation_adj @ entity_relation_adj.T\n", "relation_adj_1_degree = entity_relation_adj.T @ entity_relation_adj\n", "\n", "# Specify the target degree of the subgraph to be expanded.\n", "# 1 or 2 is enough for most cases.\n", "target_degree = 1\n", "\n", "# Compute the target degree adjacency matrices using matrix multiplication.\n", "entity_adj_target_degree = entity_adj_1_degree\n", "for _ in range(target_degree - 1):\n", " entity_adj_target_degree = entity_adj_target_degree @ entity_adj_1_degree.T\n", "relation_adj_target_degree = relation_adj_1_degree\n", "for _ in range(target_degree - 1):\n", " relation_adj_target_degree = relation_adj_target_degree @ relation_adj_1_degree.T\n", "\n", "entity_relation_adj_target_degree = entity_adj_target_degree @ entity_relation_adj" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "By taking the value from the target degree expansion matrix, we can easily expand the corresponding degree from the retrieved entity and relations to obtain all relations of the subgraph." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "expanded_relations_from_relation = set()\n", "expanded_relations_from_entity = set()\n", "\n", "filtered_hit_relation_ids = [\n", " relation_res[\"entity\"][\"id\"]\n", " for relation_res in relation_search_res\n", "]\n", "for hit_relation_id in filtered_hit_relation_ids:\n", " expanded_relations_from_relation.update(\n", " relation_adj_target_degree[hit_relation_id].nonzero()[1].tolist()\n", " )\n", "\n", "filtered_hit_entity_ids = [\n", " one_entity_res[\"entity\"][\"id\"]\n", " for one_entity_search_res in entity_search_res\n", " for one_entity_res in one_entity_search_res\n", "]\n", "\n", "for filtered_hit_entity_id in filtered_hit_entity_ids:\n", " expanded_relations_from_entity.update(\n", " entity_relation_adj_target_degree[filtered_hit_entity_id].nonzero()[1].tolist()\n", " )\n", "\n", "# Merge the expanded relations from the relation and entity retrieval ways.\n", "relation_candidate_ids = list(\n", " expanded_relations_from_relation | expanded_relations_from_entity\n", ")\n", "\n", "relation_candidate_texts = [\n", " relations[relation_id] for relation_id in relation_candidate_ids\n", "]" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "We have get the candidate relationships by expanding the subgraph, which will be reranked by LLM in the next step." ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "### LLM Reranking\n", "\n", "In this stage, we deploy the powerful self-attention mechanism of LLM to further filter and refine the candidate set of relationships. The subgraph expansion step provides us with many potentially relevant relationships, but not all of them are equally useful for answering our specific query. This is where **Large Language Models** excel - they can understand the semantic meaning of both the query and the candidate relationships, then intelligently select the most relevant ones.\n", "\n", "**Why LLM Reranking is Necessary**:\n", "- **Semantic understanding**: LLMs can understand complex query intentions that pure similarity search might miss\n", "- **Multi-hop reasoning**: LLMs can trace logical connections across multiple relationships\n", "- **Context awareness**: LLMs consider how relationships work together to answer the query\n", "- **Quality filtering**: LLMs can identify and prioritize the most informative relationships\n", "\n", "**Chain-of-Thought Prompting Strategy**:\n", "We use a structured approach that encourages the LLM to:\n", "1. **Analyze the query**: Break down what information is needed to answer the question\n", "2. **Identify key connections**: Determine which types of relationships would be most helpful \n", "3. **Reason about relevance**: Explain why specific relationships are chosen\n", "4. **Rank by importance**: Order relationships by their utility for the final answer\n", "\n", "**One-Shot Learning Pattern**: We provide a concrete example of the reasoning process to guide the LLM's behavior. This example demonstrates how to identify core entities, trace multi-hop connections, and prioritize the most direct relationships.\n", "\n", "**JSON Output Format**: By requiring structured JSON output, we ensure reliable parsing and consistent results, making the system robust for production use.\n", "\n", "#### Define One-Shot Learning Examples\n", "\n", "First, we prepare the one-shot learning examples to guide the LLM's reasoning process:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "query_prompt_one_shot_input = \"\"\"I will provide you with a list of relationship descriptions. Your task is to select 3 relationships that may be useful to answer the given question. Please return a JSON object containing your thought process and a list of the selected relationships in order of their relevance.\n", "\n", "Question:\n", "When was the mother of the leader of the Third Crusade born?\n", "\n", "Relationship descriptions:\n", "[1] Eleanor was born in 1122.\n", "[2] Eleanor married King Louis VII of France.\n", "[3] Eleanor was the Duchess of Aquitaine.\n", "[4] Eleanor participated in the Second Crusade.\n", "[5] Eleanor had eight children.\n", "[6] Eleanor was married to Henry II of England.\n", "[7] Eleanor was the mother of Richard the Lionheart.\n", "[8] Richard the Lionheart was the King of England.\n", "[9] Henry II was the father of Richard the Lionheart.\n", "[10] Henry II was the King of England.\n", "[11] Richard the Lionheart led the Third Crusade.\n", "\n", "\"\"\"\n", "query_prompt_one_shot_output = \"\"\"{\"thought_process\": \"To answer the question about the birth of the mother of the leader of the Third Crusade, I first need to identify who led the Third Crusade and then determine who his mother was. After identifying his mother, I can look for the relationship that mentions her birth.\", \"useful_relationships\": [\"[11] Richard the Lionheart led the Third Crusade\", \"[7] Eleanor was the mother of Richard the Lionheart\", \"[1] Eleanor was born in 1122\"]}\"\"\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Create Query Prompt Template\n", "\n", "Next, we define the template for formatting new queries:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "query_prompt_template = \"\"\"Question:\n", "{question}\n", "\n", "Relationship descriptions:\n", "{relation_des_str}\n", "\n", "\"\"\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Implement the Reranking Function\n", "\n", "Now we implement the core reranking function that processes candidate relationships:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def rerank_relations(\n", " query: str, relation_candidate_texts: list[str], relation_candidate_ids: list[str]\n", ") -> list[int]:\n", " \"\"\"\n", " Rerank candidate relations using LLM to select the most relevant ones for answering a query.\n", " \n", " This function uses a large language model with Chain-of-Thought prompting to analyze\n", " candidate relationships and select the most useful ones for answering the given query.\n", " It employs a one-shot learning approach with a predefined example to guide the LLM's\n", " reasoning process.\n", " \n", " Args:\n", " query (str): The input question that needs to be answered.\n", " relation_candidate_texts (list[str]): List of candidate relationship descriptions.\n", " relation_candidate_ids (list[str]): List of IDs corresponding to the candidate relations.\n", " \n", " Returns:\n", " list[int]: A list of relation IDs ranked by their relevance to the query.\n", " \"\"\"\n", " relation_des_str = \"\\n\".join(\n", " map(\n", " lambda item: f\"[{item[0]}] {item[1]}\",\n", " zip(relation_candidate_ids, relation_candidate_texts),\n", " )\n", " ).strip()\n", " rerank_prompts = ChatPromptTemplate.from_messages(\n", " [\n", " HumanMessage(query_prompt_one_shot_input),\n", " AIMessage(query_prompt_one_shot_output),\n", " HumanMessagePromptTemplate.from_template(query_prompt_template),\n", " ]\n", " )\n", " rerank_chain = (\n", " rerank_prompts\n", " | llm.bind(response_format={\"type\": \"json_object\"})\n", " | JsonOutputParser()\n", " )\n", " rerank_res = rerank_chain.invoke(\n", " {\"question\": query, \"relation_des_str\": relation_des_str}\n", " )\n", " rerank_relation_ids = []\n", " rerank_relation_lines = rerank_res[\"useful_relationships\"]\n", " id_2_lines = {}\n", " for line in rerank_relation_lines:\n", " id_ = int(line[line.find(\"[\") + 1 : line.find(\"]\")])\n", " id_2_lines[id_] = line.strip()\n", " rerank_relation_ids.append(id_)\n", " return rerank_relation_ids" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Execute the Reranking Process\n", "\n", "Finally, we apply the reranking function to our candidate relationships:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "rerank_relation_ids = rerank_relations(\n", " query,\n", " relation_candidate_texts=relation_candidate_texts,\n", " relation_candidate_ids=relation_candidate_ids,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "### Get Final Results\n", "\n", "We can get final retrieved passages from the reranked relationships. The final step demonstrates the power of our Graph RAG approach by comparing it directly with traditional RAG methods. This comparison reveals why graph-based reasoning is essential for complex multi-hop questions.\n", "\n", "**Our Method - Graph RAG Process**:\n", "1. Start with reranked relationships from LLM filtering\n", "2. Map relationships back to their source passages using `relationid_2_passageids`\n", "3. Collect unique passages while preserving relevance order\n", "4. Return the top-k most relevant passages for answer generation\n", "\n", "**Baseline - Naive RAG Process**:\n", "1. Directly search the passage collection using query embeddings\n", "2. Return top-k most semantically similar passages\n", "3. No consideration of entity relationships or graph structure\n", "\n", "**Key Differences**:\n", "- **Graph RAG**: Reasons through entity relationships to find relevant context\n", "- **Naive RAG**: Relies solely on surface-level semantic similarity between query and passages\n", "\n", "**Expected Outcome**: For multi-hop questions like \"What contribution did the son of Euler's teacher make?\", our Graph RAG approach should:\n", "- **Identify the reasoning chain**: Euler → Johann Bernoulli (teacher) → Daniel Bernoulli (son) → contributions\n", "- **Retrieve relevant passages**: Find passages about Daniel Bernoulli's contributions to fluid dynamics\n", "- **Provide accurate answers**: Generate responses based on the correct contextual information\n", "\n", "In contrast, naive RAG might retrieve passages about Euler directly or miss the multi-hop connection entirely, leading to incomplete or incorrect answers." ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "final_top_k = 2\n", "\n", "final_passages = []\n", "final_passage_ids = []\n", "for relation_id in rerank_relation_ids:\n", " for passage_id in relationid_2_passageids[relation_id]:\n", " if passage_id not in final_passage_ids:\n", " final_passage_ids.append(passage_id)\n", " final_passages.append(passages[passage_id])\n", "passages_from_our_method = final_passages[:final_top_k]" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "\n", "We can compare the results with the naive RAG method, which retrieves the topK passages based on the query embedding directly from the passage collection." ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false }, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Passages retrieved from naive RAG: \n", "['Leonhard Euler (1707–1783) was one of the greatest mathematicians of all time, and his relationship with the Bernoulli family was significant. Euler was born in Basel and was a student of Johann Bernoulli, who recognized his exceptional talent and mentored him in mathematics. Johann Bernoulli’s influence on Euler was profound, and Euler later expanded upon many of the ideas and methods he learned from the Bernoullis.', 'Johann Bernoulli (1667–1748): Johann, Jakob’s younger brother, was also a major figure in the development of calculus. He worked on infinitesimal calculus and was instrumental in spreading the ideas of Leibniz across Europe. Johann also contributed to the calculus of variations and was known for his work on the brachistochrone problem, which is the curve of fastest descent between two points.']\n", "\n", "Passages retrieved from our method: \n", "['Leonhard Euler (1707–1783) was one of the greatest mathematicians of all time, and his relationship with the Bernoulli family was significant. Euler was born in Basel and was a student of Johann Bernoulli, who recognized his exceptional talent and mentored him in mathematics. Johann Bernoulli’s influence on Euler was profound, and Euler later expanded upon many of the ideas and methods he learned from the Bernoullis.', 'Daniel Bernoulli (1700–1782): The son of Johann Bernoulli, Daniel made major contributions to fluid dynamics, probability, and statistics. He is most famous for Bernoulli’s principle, which describes the behavior of fluid flow and is fundamental to the understanding of aerodynamics.']\n", "\n", "\n", "Answer from naive RAG: I don't know. The retrieved context does not provide information about the contributions made by the son of Euler's teacher.\n", "\n", "Answer from our method: The son of Euler's teacher, Daniel Bernoulli, made major contributions to fluid dynamics, probability, and statistics. He is most famous for Bernoulli’s principle, which describes the behavior of fluid flow and is fundamental to the understanding of aerodynamics.\n" ] } ], "source": [ "naive_passage_res = milvus_client.search(\n", " collection_name=passage_col_name,\n", " data=[query_embedding],\n", " limit=final_top_k,\n", " output_fields=[\"text\"],\n", ")[0]\n", "passages_from_naive_rag = [res[\"entity\"][\"text\"] for res in naive_passage_res]\n", "\n", "print(\n", " f\"Passages retrieved from naive RAG: \\n{passages_from_naive_rag}\\n\\n\"\n", " f\"Passages retrieved from our method: \\n{passages_from_our_method}\\n\\n\"\n", ")\n", "\n", "\n", "prompt = ChatPromptTemplate.from_messages(\n", " [\n", " (\n", " \"human\",\n", " \"\"\"Use the following pieces of retrieved context to answer the question. If there is not enough information in the retrieved context to answer the question, just say that you don't know.\n", "Question: {question}\n", "Context: {context}\n", "Answer:\"\"\",\n", " )\n", " ]\n", ")\n", "\n", "rag_chain = prompt | llm | StrOutputParser()\n", "\n", "answer_from_naive_rag = rag_chain.invoke(\n", " {\"question\": query, \"context\": \"\\n\".join(passages_from_naive_rag)}\n", ")\n", "answer_from_our_method = rag_chain.invoke(\n", " {\"question\": query, \"context\": \"\\n\".join(passages_from_our_method)}\n", ")\n", "\n", "print(\n", " f\"Answer from naive RAG: {answer_from_naive_rag}\\n\\nAnswer from our method: {answer_from_our_method}\"\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The results show that the retrieved passages from the vanilla RAG missed a ground-truth passage, which led to a wrong answer.\n", "\n", "The retrieved passages from our method are correct, and it helps to get an accurate answer to the question.\n", "\n", "### Key Insights and Learning Outcomes\n", "\n", "The comparison results clearly demonstrate the superiority of our Graph RAG approach for multi-hop reasoning tasks. Let's analyze what we've accomplished:\n", "\n", "**Performance Analysis**:\n", "- **Naive RAG Limitation**: Traditional similarity search fails because the query \"What contribution did the son of Euler's teacher make?\" doesn't have high semantic similarity to passages about Daniel Bernoulli's fluid dynamics contributions. The surface-level keywords don't match well.\n", "- **Graph RAG Success**: Our method successfully traces the logical chain: Query mentions \"Euler\" → Entity retrieval finds \"Leonhard Euler\" → Graph expansion discovers \"Johann Bernoulli was Euler's teacher\" → Further expansion finds \"Daniel Bernoulli was Johann's son\" → Relationship filtering identifies Daniel's contributions → Correct passages retrieved.\n", "\n", "**Methodological Innovations Demonstrated**:\n", "1. **Vector-only Graph RAG**: We achieved graph-level reasoning using only vector databases, eliminating architectural complexity\n", "2. **Multi-modal retrieval**: Combining entity-based and relationship-based search paths provided redundancy and improved coverage \n", "3. **Mathematical graph expansion**: Sparse matrix operations enabled efficient multi-hop traversal at scale\n", "4. **LLM-powered filtering**: Chain-of-thought reasoning provided intelligent relationship selection beyond simple similarity\n", "\n", "**Practical Applications**:\n", "This approach excels in domains requiring complex reasoning:\n", "- **Knowledge bases**: Scientific literature, historical records, technical documentation\n", "- **Enterprise search**: Finding information across interconnected business entities and processes\n", "- **Question answering**: Academic research, legal document analysis, medical knowledge retrieval\n", "- **Content recommendation**: Understanding user intent through relationship networks\n", "\n", "**Scalability Considerations**:\n", "- **Vector database scaling**: Milvus can handle billions of vectors with distributed architecture\n", "- **Matrix computation efficiency**: Sparse matrix operations scale logarithmically with data size\n", "- **LLM inference optimization**: Reranking step can be parallelized and cached for repeated patterns\n", "\n", "The tutorial demonstrates that sophisticated reasoning capabilities can be achieved through thoughtful system design, even when using simpler infrastructure components. This balance of power and simplicity makes the approach highly practical for real-world deployments." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Scale Your Graph RAG System with Fully-Managed Milvus\n", "\n", "While the example in this tutorial works well with a small dataset, implementing Graph RAG in production with large-scale data requires robust infrastructure. Milvus is a distributed vector database that scales to billions, making it a trustable choice for managing large-scale vector data. Managing a self-hosted Milvus cluster can become challenging in production. If your priority is developing business logic for your RAG applications, Zilliz Cloud offers a fully-managed Milvus service that handles all the operational complexity for you:\n", "\n", "![Zilliz Cloud Screenshot](../images/zilliz_screenshot.png)\n", "\n", "- **Production-Ready**: Built-in high availability and security features essential for mission-critical AI applications\n", "- **10x Faster Performance**: Its proprietary Cardinal vector index engine provides 10x faster performance even compared to high-performance open-source Milvus.\n", "- **AutoIndex**: The AutoIndex feature saving the effort of index selection and parameter tuning.\n", "- **Lower Total Cost of Ownership (TCO)**: Focus on your application while we handle scaling, updates, and monitoring, and pay only for what you use with flexible pricing tiers, which leads to a lower TCO compared to managing a self-hosted Milvus cluster\n", "\n", "[**Try Zilliz Cloud for Free Today →**](https://cloud.zilliz.com/signup?utm_source=github&utm_medium=referral&utm_campaign=Nir-250512)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--graphrag-with-milvus-vectordb)" ] } ], "metadata": { "kernelspec": { "display_name": "py310", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.13" } }, "nbformat": 4, "nbformat_minor": 4 } ================================================ FILE: all_rag_techniques/hierarchical_indices.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Hierarchical Indices in Document Retrieval\n", "\n", "## Overview\n", "\n", "This code implements a Hierarchical Indexing system for document retrieval, utilizing two levels of encoding: document-level summaries and detailed chunks. This approach aims to improve the efficiency and relevance of information retrieval by first identifying relevant document sections through summaries, then drilling down to specific details within those sections.\n", "\n", "## Motivation\n", "\n", "Traditional flat indexing methods can struggle with large documents or corpus, potentially missing context or returning irrelevant information. Hierarchical indexing addresses this by creating a two-tier search system, allowing for more efficient and context-aware retrieval.\n", "\n", "## Key Components\n", "\n", "1. PDF processing and text chunking\n", "2. Asynchronous document summarization using OpenAI's GPT-4\n", "3. Vector store creation for both summaries and detailed chunks using FAISS and OpenAI embeddings\n", "4. Custom hierarchical retrieval function\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing and Encoding\n", "\n", "1. The PDF is loaded and split into documents (likely by page).\n", "2. Each document is summarized asynchronously using GPT-4.\n", "3. The original documents are also split into smaller, detailed chunks.\n", "4. Two separate vector stores are created:\n", " - One for document-level summaries\n", " - One for detailed chunks\n", "\n", "### Asynchronous Processing and Rate Limiting\n", "\n", "1. The code uses asynchronous programming (asyncio) to improve efficiency.\n", "2. Implements batching and exponential backoff to handle API rate limits.\n", "\n", "### Hierarchical Retrieval\n", "\n", "The `retrieve_hierarchical` function implements the two-tier search:\n", "\n", "1. It first searches the summary vector store to identify relevant document sections.\n", "2. For each relevant summary, it then searches the detailed chunk vector store, filtering by the corresponding page number.\n", "3. This approach ensures that detailed information is retrieved only from the most relevant document sections.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Improved Retrieval Efficiency: By first searching summaries, the system can quickly identify relevant document sections without processing all detailed chunks.\n", "2. Better Context Preservation: The hierarchical approach helps maintain the broader context of retrieved information.\n", "3. Scalability: This method is particularly beneficial for large documents or corpus, where flat searching might be inefficient or miss important context.\n", "4. Flexibility: The system allows for adjusting the number of summaries and chunks retrieved, enabling fine-tuning for different use cases.\n", "\n", "## Implementation Details\n", "\n", "1. Asynchronous Programming: Utilizes Python's asyncio for efficient I/O operations and API calls.\n", "2. Rate Limit Handling: Implements batching and exponential backoff to manage API rate limits effectively.\n", "3. Persistent Storage: Saves the generated vector stores locally to avoid unnecessary recomputation.\n", "\n", "## Conclusion\n", "\n", "Hierarchical indexing represents a sophisticated approach to document retrieval, particularly suitable for large or complex document sets. By leveraging both high-level summaries and detailed chunks, it offers a balance between broad context understanding and specific information retrieval. This method has potential applications in various fields requiring efficient and context-aware information retrieval, such as legal document analysis, academic research, or large-scale content management systems." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"hierarchical_indices\"\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"hierarchical_indices\"\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain langchain-openai python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "c:\\Users\\N7\\PycharmProjects\\llm_tasks\\RAG_TECHNIQUES\\.venv\\Lib\\site-packages\\deepeval\\__init__.py:45: UserWarning: You are using deepeval version 0.21.73, however version 1.0.3 is available. You should consider upgrading via the \"pip install --upgrade deepeval\" command.\n", " warnings.warn(\n" ] } ], "source": [ "import asyncio\n", "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from langchain_openai import ChatOpenAI\n", "from langchain.chains.summarize.chain import load_summarize_chain\n", "from langchain.docstore.document import Document\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "from helper_functions import encode_pdf, encode_from_string\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define document path" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Function to encode to both summary and chunk levels, sharing the page metadata" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "async def encode_pdf_hierarchical(path, chunk_size=1000, chunk_overlap=200, is_string=False):\n", " \"\"\"\n", " Asynchronously encodes a PDF book into a hierarchical vector store using OpenAI embeddings.\n", " Includes rate limit handling with exponential backoff.\n", " \n", " Args:\n", " path: The path to the PDF file.\n", " chunk_size: The desired size of each text chunk.\n", " chunk_overlap: The amount of overlap between consecutive chunks.\n", " \n", " Returns:\n", " A tuple containing two FAISS vector stores:\n", " 1. Document-level summaries\n", " 2. Detailed chunks\n", " \"\"\"\n", " \n", " # Load PDF documents\n", " if not is_string:\n", " loader = PyPDFLoader(path)\n", " documents = await asyncio.to_thread(loader.load)\n", " else:\n", " text_splitter = RecursiveCharacterTextSplitter(\n", " # Set a really small chunk size, just to show.\n", " chunk_size=chunk_size,\n", " chunk_overlap=chunk_overlap,\n", " length_function=len,\n", " is_separator_regex=False,\n", " )\n", " documents = text_splitter.create_documents([path])\n", "\n", "\n", " # Create document-level summaries\n", " summary_llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o-mini\", max_tokens=4000)\n", " summary_chain = load_summarize_chain(summary_llm, chain_type=\"map_reduce\")\n", " \n", " async def summarize_doc(doc):\n", " \"\"\"\n", " Summarizes a single document with rate limit handling.\n", " \n", " Args:\n", " doc: The document to be summarized.\n", " \n", " Returns:\n", " A summarized Document object.\n", " \"\"\"\n", " # Retry the summarization with exponential backoff\n", " summary_output = await retry_with_exponential_backoff(summary_chain.ainvoke([doc]))\n", " summary = summary_output['output_text']\n", " return Document(\n", " page_content=summary,\n", " metadata={\"source\": path, \"page\": doc.metadata[\"page\"], \"summary\": True}\n", " )\n", "\n", " # Process documents in smaller batches to avoid rate limits\n", " batch_size = 5 # Adjust this based on your rate limits\n", " summaries = []\n", " for i in range(0, len(documents), batch_size):\n", " batch = documents[i:i+batch_size]\n", " batch_summaries = await asyncio.gather(*[summarize_doc(doc) for doc in batch])\n", " summaries.extend(batch_summaries)\n", " await asyncio.sleep(1) # Short pause between batches\n", "\n", " # Split documents into detailed chunks\n", " text_splitter = RecursiveCharacterTextSplitter(\n", " chunk_size=chunk_size, chunk_overlap=chunk_overlap, length_function=len\n", " )\n", " detailed_chunks = await asyncio.to_thread(text_splitter.split_documents, documents)\n", "\n", " # Update metadata for detailed chunks\n", " for i, chunk in enumerate(detailed_chunks):\n", " chunk.metadata.update({\n", " \"chunk_id\": i,\n", " \"summary\": False,\n", " \"page\": int(chunk.metadata.get(\"page\", 0))\n", " })\n", "\n", " # Create embeddings\n", " embeddings = OpenAIEmbeddings()\n", "\n", " # Create vector stores asynchronously with rate limit handling\n", " async def create_vectorstore(docs):\n", " \"\"\"\n", " Creates a vector store from a list of documents with rate limit handling.\n", " \n", " Args:\n", " docs: The list of documents to be embedded.\n", " \n", " Returns:\n", " A FAISS vector store containing the embedded documents.\n", " \"\"\"\n", " return await retry_with_exponential_backoff(\n", " asyncio.to_thread(FAISS.from_documents, docs, embeddings)\n", " )\n", "\n", " # Generate vector stores for summaries and detailed chunks concurrently\n", " summary_vectorstore, detailed_vectorstore = await asyncio.gather(\n", " create_vectorstore(summaries),\n", " create_vectorstore(detailed_chunks)\n", " )\n", "\n", " return summary_vectorstore, detailed_vectorstore" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Encode the PDF book to both document-level summaries and detailed chunks if the vector stores do not exist\n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "if os.path.exists(\"../vector_stores/summary_store\") and os.path.exists(\"../vector_stores/detailed_store\"):\n", " embeddings = OpenAIEmbeddings()\n", " summary_store = FAISS.load_local(\"../vector_stores/summary_store\", embeddings, allow_dangerous_deserialization=True)\n", " detailed_store = FAISS.load_local(\"../vector_stores/detailed_store\", embeddings, allow_dangerous_deserialization=True)\n", "\n", "else:\n", " summary_store, detailed_store = await encode_pdf_hierarchical(path)\n", " summary_store.save_local(\"../vector_stores/summary_store\")\n", " detailed_store.save_local(\"../vector_stores/detailed_store\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Retrieve information according to summary level, and then retrieve information from the chunk level vector store and filter according to the summary level pages" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "def retrieve_hierarchical(query, summary_vectorstore, detailed_vectorstore, k_summaries=3, k_chunks=5):\n", " \"\"\"\n", " Performs a hierarchical retrieval using the query.\n", "\n", " Args:\n", " query: The search query.\n", " summary_vectorstore: The vector store containing document summaries.\n", " detailed_vectorstore: The vector store containing detailed chunks.\n", " k_summaries: The number of top summaries to retrieve.\n", " k_chunks: The number of detailed chunks to retrieve per summary.\n", "\n", " Returns:\n", " A list of relevant detailed chunks.\n", " \"\"\"\n", " \n", " # Retrieve top summaries\n", " top_summaries = summary_vectorstore.similarity_search(query, k=k_summaries)\n", " \n", " relevant_chunks = []\n", " for summary in top_summaries:\n", " # For each summary, retrieve relevant detailed chunks\n", " page_number = summary.metadata[\"page\"]\n", " page_filter = lambda metadata: metadata[\"page\"] == page_number\n", " page_chunks = detailed_vectorstore.similarity_search(\n", " query, \n", " k=k_chunks, \n", " filter=page_filter\n", " )\n", " relevant_chunks.extend(page_chunks)\n", " \n", " return relevant_chunks" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Demonstrate on a use case" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "query = \"What is the greenhouse effect?\"\n", "results = retrieve_hierarchical(query, summary_store, detailed_store)\n", "\n", "# Print results\n", "for chunk in results:\n", " print(f\"Page: {chunk.metadata['page']}\")\n", " print(f\"Content: {chunk.page_content}...\") # Print first 100 characters\n", " print(\"---\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--hierarchical-indices)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/multi_model_rag_with_captioning.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "### Overview: \n", "This code implements one of the multiple ways of multi-model RAG. It extracts and processes text and images from PDFs, utilizing a multi-modal Retrieval-Augmented Generation (RAG) system for summarizing and retrieving content for question answering.\n", "\n", "### Key Components:\n", " - **PyMuPDF**: For extracting text and images from PDFs.\n", " - **Gemini 1.5-flash model**: To summarize images and tables.\n", " - **Cohere Embeddings**: For embedding document splits.\n", " - **Chroma Vectorstore**: To store and retrieve document embeddings.\n", " - **LangChain**: To orchestrate the retrieval and generation pipeline." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Diagram:\n", " \"Reliable-RAG\"\n", "\n", "### Motivation: \n", "Efficiently summarize complex documents to facilitate easy retrieval and concise responses for multi-modal data.\n", "\n", "### Method Details:\n", " - Text and images are extracted from the PDF using PyMuPDF.\n", " - Summarization is performed on extracted images and tables using Gemini.\n", " - Embeddings are generated via Cohere for storage in Chroma.\n", " - A similarity-based retriever fetches relevant sections based on the query.\n", "\n", "### Benefits:\n", " - Simplified retrieval from complex, multi-modal documents.\n", " - Streamlined Q&A process for both text and images.\n", " - Flexible architecture for expanding to more document types.\n", "\n", "### Implementation:\n", " - Documents are split into chunks with overlap using a text splitter.\n", " - Summarized text and image content are stored as vectors.\n", " - Queries are handled by retrieving relevant document segments and generating concise answers.\n", "\n", "### Summary: \n", "The project enables multi-modal document processing and retrieval, providing concise, relevant responses by combining state-of-the-art LLMs and vector-based retrieval systems." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain langchain-community pillow pymupdf python-dotenv" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import fitz # PyMuPDF\n", "from PIL import Image\n", "import io\n", "import os\n", "from dotenv import load_dotenv\n", "\n", "import google.generativeai as genai\n", "from langchain_core.prompts import ChatPromptTemplate\n", "from langchain_core.documents import Document\n", "from langchain.text_splitter import RecursiveCharacterTextSplitter\n", "from langchain_community.vectorstores import Chroma\n", "from langchain_cohere import ChatCohere, CohereEmbeddings\n", "\n", "load_dotenv()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Download the \"Attention is all you need\" paper" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--2024-09-20 19:19:26-- https://arxiv.org/pdf/1706.03762\n", "Resolving arxiv.org (arxiv.org)... 151.101.195.42, 151.101.3.42, 151.101.67.42, ...\n", "Connecting to arxiv.org (arxiv.org)|151.101.195.42|:443... connected.\n", "HTTP request sent, awaiting response... 200 OK\n", "Length: 2215244 (2.1M) [application/pdf]\n", "Saving to: ‘1706.03762’\n", "\n", "1706.03762 100%[===================>] 2.11M 13.3MB/s in 0.2s \n", "\n", "2024-09-20 19:19:26 (13.3 MB/s) - ‘1706.03762’ saved [2215244/2215244]\n", "\n" ] } ], "source": [ "!wget https://arxiv.org/pdf/1706.03762\n", "!mv 1706.03762 attention_is_all_you_need.pdf" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Data Extraction" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "text_data = []\n", "img_data = []" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "with fitz.open('attention_is_all_you_need.pdf') as pdf_file:\n", " # Create a directory to store the images\n", " if not os.path.exists(\"extracted_images\"):\n", " os.makedirs(\"extracted_images\")\n", "\n", " # Loop through every page in the PDF\n", " for page_number in range(len(pdf_file)):\n", " page = pdf_file[page_number]\n", " \n", " # Get the text on page\n", " text = page.get_text().strip()\n", " text_data.append({\"response\": text, \"name\": page_number+1})\n", " # Get the list of images on the page\n", " images = page.get_images(full=True)\n", "\n", " # Loop through all images found on the page\n", " for image_index, img in enumerate(images, start=0):\n", " xref = img[0] # Get the XREF of the image\n", " base_image = pdf_file.extract_image(xref) # Extract the image\n", " image_bytes = base_image[\"image\"] # Get the image bytes\n", " image_ext = base_image[\"ext\"] # Get the image extension\n", " \n", " # Load the image using PIL and save it\n", " image = Image.open(io.BytesIO(image_bytes))\n", " image.save(f\"extracted_images/image_{page_number+1}_{image_index+1}.{image_ext}\")" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "genai.configure(api_key=os.getenv('GOOGLE_API_KEY'))\n", "model = genai.GenerativeModel(model_name=\"gemini-1.5-flash\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Image Captioning" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "for img in os.listdir(\"extracted_images\"):\n", " image = Image.open(f\"extracted_images/{img}\")\n", " response = model.generate_content([image, \"You are an assistant tasked with summarizing tables, images and text for retrieval. \\\n", " These summaries will be embedded and used to retrieve the raw text or table elements \\\n", " Give a concise summary of the table or text that is well optimized for retrieval. Table or text or image:\"])\n", " img_data.append({\"response\": response.text, \"name\": img})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Vectostore" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "# Set embeddings\n", "embedding_model = CohereEmbeddings(model=\"embed-english-v3.0\")\n", "\n", "# Load the document\n", "docs_list = [Document(page_content=text['response'], metadata={\"name\": text['name']}) for text in text_data]\n", "img_list = [Document(page_content=img['response'], metadata={\"name\": img['name']}) for img in img_data]\n", "\n", "# Split\n", "text_splitter = RecursiveCharacterTextSplitter.from_tiktoken_encoder(\n", " chunk_size=400, chunk_overlap=50\n", ")\n", "\n", "doc_splits = text_splitter.split_documents(docs_list)\n", "img_splits = text_splitter.split_documents(img_list)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "# Add to vectorstore\n", "vectorstore = Chroma.from_documents(\n", " documents=doc_splits + img_splits, # adding the both text and image splits\n", " collection_name=\"multi_model_rag\",\n", " embedding=embedding_model,\n", ")\n", "\n", "retriever = vectorstore.as_retriever(\n", " search_type=\"similarity\",\n", " search_kwargs={'k': 1}, # number of documents to retrieve\n", " )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Query" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "query = \"What is the BLEU score of the Transformer (base model)?\"" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "docs = retriever.invoke(query)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Output" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The Transformer (base model) achieves a BLEU score of 27.3.\n" ] } ], "source": [ "from langchain_core.output_parsers import StrOutputParser\n", "\n", "# Prompt\n", "system = \"\"\"You are an assistant for question-answering tasks. Answer the question based upon your knowledge. \n", "Use three-to-five sentences maximum and keep the answer concise.\"\"\"\n", "prompt = ChatPromptTemplate.from_messages(\n", " [\n", " (\"system\", system),\n", " (\"human\", \"Retrieved documents: \\n\\n {documents} \\n\\n User question: {question}\"),\n", " ]\n", ")\n", "\n", "# LLM\n", "llm = ChatCohere(model=\"command-r-plus\", temperature=0)\n", "\n", "# Chain\n", "rag_chain = prompt | llm | StrOutputParser()\n", "\n", "# Run\n", "generation = rag_chain.invoke({\"documents\":docs[0].page_content, \"question\": query})\n", "print(generation)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--multi-model-rag-with-captioning)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/multi_model_rag_with_colpali.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "### Overview:\n", "This code implements one of the multiple ways of multi-model RAG. This project processes a PDF file, retrieves relevant content using Colpali, and generates answers using a multi-modal RAG system. The process includes document indexing, querying, and summarizing with the Gemini model.\n", "\n", "### Key Components:\n", "- **RAGMultiModalModel**: Used for document indexing and retrieval.\n", "- **PDF Processing**: Downloads and processes \"Attention is All You Need\" paper.\n", "- **Gemini Model**: Used for content generation from retrieved images and queries.\n", "- **Base64 Encoding/Decoding**: Manages image data retrieved during search.\n", "\n", "### Diagram:\n", " \"Reliable-RAG\"\n", "\n", "### Motivation:\n", "To enable efficient querying and content generation from multi-modal documents (PDFs with text and images) in response to natural language queries.\n", "\n", "### Method Details:\n", "- Indexing: The PDF is indexed using the `RAGMultiModalModel`, storing both text and image data.\n", "- Querying: Natural language queries retrieve relevant document segments.\n", "- Image Processing: Images from the document are decoded, displayed, and used in conjunction with the Gemini model to generate content.\n", "\n", "### Benefits:\n", "- Multi-modal support for both text and images.\n", "- Streamlined retrieval and summarization pipeline.\n", "- Flexible content generation using advanced LLMs (Gemini model).\n", "\n", "### Implementation:\n", "- PDF is indexed, and the content is split into text and image segments.\n", "- A query is run against the indexed document to fetch the relevant results.\n", "- Retrieved image data is decoded and passed through the Gemini model for answer generation.\n", "\n", "### Summary:\n", "This project integrates document indexing, retrieval, and content generation in a multi-modal setting, enabling efficient queries on complex documents like research papers." ] }, { "cell_type": "markdown", "metadata": { "id": "63O4k-idQv4g" }, "source": [ "## Setup\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "7T68IwLTQpnQ", "outputId": "b7faa397-cf5a-4092-e701-c62862d72b32" }, "outputs": [], "source": [ "# Install required packages\n", "!pip install pillow python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "4zfW7curbWUi", "outputId": "7c225dac-f3b5-463b-8d26-d2da7b64812a" }, "outputs": [], "source": [ "!pip install -q git+https://github.com/huggingface/transformers.git qwen-vl-utils flash-attn optimum auto-gptq bitsandbytes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install base64 byaldi os ragmultimodalmodel" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation\n", "\n", "The cell below installs all necessary packages required to run this notebook. If you're running this notebook in a new environment, execute this cell first to ensure all dependencies are installed." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install byaldi" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "2pQfWr9XRD_p" }, "outputs": [], "source": [ "import base64\n", "import os\n", "os.environ[\"HF_token\"] = 'your-huggingface-api-key' # to download the ColPali model\n", "from byaldi import RAGMultiModalModel" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 598, "referenced_widgets": [ "a6a5a7c2a40645c38dc96712632d2047", "3bd8ff8e4a444257ac2cb3b68c0219ae", "7b51c9cf0f77486295c1ff13c6ab0e41", "5cced4735fcd498694f4dd6378edc06e", "0b3ba88273a24551b27d3eb87c557c00", "1577a19094de4393b5d967dbc7cbb307", "9530bbb0294c451e830f8b9255437440", "b630f8ff09f7424aa3eadcc7adff5f04", "5fe83b63acce4a0da58e43a1e2178d1d", "989f395d2e844ee383ca9fdcd966d795", "fe29bdb22b78449d9288ad98576cade3", "aa768f0821fb4b42a1a74fe61d13868f", "42d839d6a9814b18a209ef4f92558a38", "fab26d5c999a4080a7cf5ec6605b3660", "32cacb6d08bd476da9a647f2d90b576f", "299e3a69848d46f4afb3b719648cd47f", "6a7e647982dd4f7f91abeb6bf7cf06cd", "00e5f08d85f34865979b9841e9d2a773", "71fd678d42ed472ea9717c16a8afdabb", "85fb6978c2af417d8b35fde8ec5eed46", "ac9877df817b4802a38d8deb60661e59", "773377fe38dd45d1bc774ac1076ea556", "51929b7d36ca4a988fc40e8fda1e3c15", "27351ef946d343dba9723b53c68baf62", "e00d8efc68c04f0cbaf94f78a2062701", "2b07f557454f47269952c7ee652fba6f", "3dd841b3cfae4a428baf2913e2ba88ff", "8840a1a4322e4f21942fcb1700edd39a", "cce8f9f443c645589d187effe8a5876a", "3ffc00850ce14cc48d7b36f4f9b4f3a8", "4472fa7e19a54ef7b570343e6548845a", "f1e872fe12994cb9bf11dff9af5837a7", "c8e77a60e9954e539164bbec4968f20a", "76e518550c514e18ab4cdf458319550e", "d9b21e1253ef4366a4bd1f7c0213827d", "22597e955eee4650b1ceeb85d2b7092c", "6b83162caac149b1beef44e5a8f54c89", "149b04c4dce3479fb8a1c6a1c4c8a3af", "5fb46bf32ae149cb8b22c0201acfa394", "1df013733bb24bf8bbbcb8adcdc5d091", "790ec46384934f7b9269c0fad62743b7", "c4e0ea161cad4e68a452e5788611db5b", "1c40b9cf869848b1a83ba77f7f3c5787", "35ea864a6f214a709332021c5f7d2cb6", "2f0ae41bdfa34022a5f42a70fe0a6b1e", "50112cf9b7fd42df94cc235635675918", "6af4de23581e4dc7b1c95101b1c34528", "ad01f019c080420b9e61bd814569fd00", "64b29a7ef7be4d0ba3e18fa09c830724", "74bc12fa97064e51864d24dae976965d", "f6568837113644be89b574dd1a793508", "d2f6280aba784a1aacb2ef7de86ea6d0", "a07fc81a34344449ae38f5459cc5f3e9", "094d3d317e9a4ed1a0965d3231bd242e", "279baca099924901bd8ad51b82d8fe08", "613c02e127cc49da8392f256246de4fd", "84beb09c5724411dacf756d1a97cbf2e", "3109b4ee24144b1b8867a83e86c88177", "a9aadc69a2424e9e91dc99440b30ee9a", "1852650c973f4691bdab7da4b56cc04d", "18a37c079f5349b49f4bc0a8a4f6eaf6", "66df7767c39a4f05a4c5c73b2d2800cc", "2d92ff270a1340a7ae88fd3a1b1f45f2", "5abe0f2fa603470fab29f4512ce2d947", "890ffb5523a24b919d8cfe045d5514bb", "702dd498eb064fd5abef3b3514726e57", "dc59ace42b9f4a3aa88dd34e9e818509", "b566e044d79545daaea0e7fb4e3133fa", "1586af3d332941be8ac97d1652b30ebd", "1744d48292514e1b91fb3a1be97fc222", "56e46bad44154c3e949858488f5e48d6", "01028ad569f74dc29a5c9d47a27401c7", "7da06891502647f6ba429e66cd1d51c6", "ff9cb12a41b74c16ba2dbf5959c1c7b4", "7876f213bb164b6eb81b705b9038f7e8", "bd62f91be0fa4088be32d23ec24fe712", "6ce0606aef9248499d7c2861fee9cc6b", "a6340348ea5848f6b19b60915a995039", "6c97c3d3c8aa46b6acc3d5430448776d", "6aea6271ea2c40369bc127fc575ebdcb", "931dd37344b54cb3982c1609a48c69ab", "b1ab21c29d4e4429848b072907c8ca14", "6689d3e9ce2a40599ab9e59f42f74658", "6319d58f350e4f23ac752ec2d7181634", "f57371ad3fd24cac988bcf4099c59ebc", "a6bce801cdb4473ca5b5c6dc22f99777", "d1f7dcac1dec405f8cb7fc1e2d371ef8", "9d3f4a40bb774aa7ab4c2b2e9439ee4b", "1abf65da5f0642789d767157994fd97d", "3b4027ead76e46c1abb1b0903d549410", "f0075ee90fa9481885194654580eb7fa", "7ed26c8ddda242d399f7d136eda9cd62", "d5b0d659e60642189032dc75b59b9e51", "ff20ca52d9ac4fdaaf7d4531534ce8be", "501d960b037a4a4d9636fff8b23ab5d4", "32c2355f3b684d41a330c461e5516ef1", "cb6e92c399fb4d21a8118b8e7612483e", "737b979c8a2a4ba0a6dcc1223c3f943e", "247ebeaf74034bec93a93362daea6463", "9084e84b9e58437495dfecdde43812e7", "d211cd8d9fc643039b6dd20758c511f6", "b5e9fbd153a24cd6b9be5403a68bdbf9", "454129eddd8445998ceadaf3d4eb22cc", "355fe5b49b3646deb7d1495adf6176f2", "5d1eaaf9a3534d75bf08a7b9d55b4228", "84de9867183941c4acbdbdd4579c8c25", "0127ed7b06724d5d8bb8e2a56cc5c14c", "6928ef1d26254e30b1d47a287661b5e4", "384bbc29d97d4a13a16ee2007510477d", "f6af0ae68c6844ebb812740d9d575e58", "ccfd1f2078894425893b8f08a67c226a", "269bc81a03b0411f976a679ab8908166", "8d4f5e27c1aa4c3cb31b2daaeae2f99f", "ee12e606c7d44547be504fd321ae25c2", "ecd8d3d554964bd8a4062854f6b043e6", "f0206c3142d54b3a85590dcdafd56a00", "6c9c0c098ae446a0a91763fe23b804ff", "4a27ad79866c4f6ca1af18068d189a08", "00bbd8a2fa9b4a3d840a749b37f54c96", "060d25b2d8ef418193a58f20f2ae21f6", "c153b3837c824a14bc2ffa5607702149", "b3c15e2da048455dbf4041a7455bf6fe", "88511f89abfd4c1995235d93d18c98d9", "e304468db4e94484a80d1ed9657426fb", "7bb26b2c28134de9a6cd9d90c48981c4", "a70eae27a93845519f7c2f32cd2e5c56", "7db0a565ceca4d35bd372a4b17634348", "d3053647983b4ddba004a5d441430239", "fdbdb98d3a44479eb0f0d6752b7e7520", "6327e4519faa49e4b089906a80528504", "005d419c8b0748dea534c2419a450427", "b0a7fcf6a02b4772a9565ba899cd633a" ] }, "id": "PER9-tVYR4Gw", "outputId": "36dcf905-4d44-46db-87d5-d883c19ec8da" }, "outputs": [], "source": [ "RAG = RAGMultiModalModel.from_pretrained(\"vidore/colpali-v1.2\", verbose=1)" ] }, { "cell_type": "markdown", "metadata": { "id": "HTAgju7sTEDP" }, "source": [ "### Download the \"Attention is all you need\" paper" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "3jpq1CJhTDSr", "outputId": "cd0c7e43-8a51-4374-c2ad-bcbeb8446aa1" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--2024-09-20 12:36:38-- https://arxiv.org/pdf/1706.03762\n", "Resolving arxiv.org (arxiv.org)... 151.101.3.42, 151.101.131.42, 151.101.67.42, ...\n", "Connecting to arxiv.org (arxiv.org)|151.101.3.42|:443... connected.\n", "HTTP request sent, awaiting response... 200 OK\n", "Length: 2215244 (2.1M) [application/pdf]\n", "Saving to: ‘1706.03762’\n", "\n", "\r", "1706.03762 0%[ ] 0 --.-KB/s \r", "1706.03762 100%[===================>] 2.11M --.-KB/s in 0.01s \n", "\n", "2024-09-20 12:36:38 (164 MB/s) - ‘1706.03762’ saved [2215244/2215244]\n", "\n" ] } ], "source": [ "!wget https://arxiv.org/pdf/1706.03762\n", "!mkdir docs\n", "!mv 1706.03762 docs/attention_is_all_you_need.pdf" ] }, { "cell_type": "markdown", "metadata": { "id": "2B5eOyCHTfD5" }, "source": [ "### Indexing" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "lZhmi7HZSpzD", "outputId": "82744031-cb6f-4b03-f6f5-a1f364425e6a" }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Starting from v4.46, the `logits` model output will have the same type as the model (except at train time, where it will always be FP32)\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Added page 1 of document 0 to index.\n", "Added page 2 of document 0 to index.\n", "Added page 3 of document 0 to index.\n", "Added page 4 of document 0 to index.\n", "Added page 5 of document 0 to index.\n", "Added page 6 of document 0 to index.\n", "Added page 7 of document 0 to index.\n", "Added page 8 of document 0 to index.\n", "Added page 9 of document 0 to index.\n", "Added page 10 of document 0 to index.\n", "Added page 11 of document 0 to index.\n", "Added page 12 of document 0 to index.\n", "Added page 13 of document 0 to index.\n", "Added page 14 of document 0 to index.\n", "Added page 15 of document 0 to index.\n", "Index exported to .byaldi/attention_is_all_you_need\n", "Index exported to .byaldi/attention_is_all_you_need\n" ] }, { "data": { "text/plain": [ "{0: 'docs/attention_is_all_you_need.pdf'}" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "RAG.index(\n", " input_path=\"./docs/attention_is_all_you_need.pdf\",\n", " index_name=\"attention_is_all_you_need\",\n", " store_collection_with_index=True, # set this to false if you don't want to store the base64 representation\n", " overwrite=True\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "uV_m5-PEStKU" }, "source": [ "### Query time" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "jL-qzLm9UHhj" }, "outputs": [], "source": [ "query = \"What is the BLEU score of the Transformer (base model)?\"" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "zqJO2m9kUIIG" }, "outputs": [], "source": [ "results = RAG.search(query, k=1)" ] }, { "cell_type": "markdown", "metadata": { "id": "z8SBbQuNVMt5" }, "source": [ "### Actual image data" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "V1gK2mbyUT90" }, "outputs": [], "source": [ "image_bytes = base64.b64decode(results[0].base64)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "trQxlI9iVPpa" }, "outputs": [], "source": [ "filename = 'image.jpg' # I assume you have a JPG file\n", "with open(filename, 'wb') as f:\n", " f.write(image_bytes)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 1000 }, "id": "ukTijocIVWRo", "outputId": "9b54f5c1-afdb-42ea-e49f-73fa76a10007" }, "outputs": [ { "data": { "image/jpeg": "iVBORw0KGgoAAAANSUhEUgAABqQAAAiYCAIAAAA+NVHkAAEAAElEQVR4nOzdd1gUx/8H8KGDoCJNwY4gdkDs2MFoxIZiV+wNu9HERI36tcWOvaAiKqJYMRbsiihiBwXpqDRBpHe4298f82Se/d0dx9LUXN6vP3i4uS2zu7Ozu5+bnVHiOI4AAAAAAAAAAADAv5/y984AAAAAAAAAAAAAVA0E+wAAAAAAAAAAABQEgn0AAAAAAAAAAAAKAsE+AAAAAAAAAAAABYFgHwAAAAAAAAAAgIJAsA8AAAAAAAAAAEBBINgHAAAAAAAAAACgIBDsAwAAAAAAAAAAUBAI9gEAAAAAAAAAACgIBPsAAAAAAAAAAAAUBIJ9AAAAAAAAAAAACgLBPgAAAAAAAAAAAAWBYB8AAAAAAAAAAICCQLAPAAAAAAAAAABAQSDYBwAAAAAAAAAAoCAQ7AMAAAAAAAAAAFAQCPYBAAAAAAAAAAAoCAT7AAAAAAAAAAAAFASCfQAAAAAAAAAAAAoCwT4AAAAAAAAAAAAFgWAfAAAAAAAAAACAgkCwDwAAAAAAAAAAQEEg2AcAAAAAAAAAAKAgEOwDAAAAAAAAAABQEAj2AQAAAAAAAAAAKAgE+wAAAAAAAAAAABQEgn0AAAAAAAAAAAAKAsE+AAAAAAAAAAAABYFgHwAAAAAAAAAAgIJAsA8AAAAAAAAAAEBBINgHAAAAAAAAAACgIBDsAwAAAAAAAAAAUBAI9gEAAAAAAAAAACgIBPsAAAAAAAAAAAAUBIJ9AAAAAAAAAAAACgLBPgAAAAAAAAAAAAWBYB8AAAAAAAAAAICCQLAPAAAAAAAAAABAQSDYBwAAAAAAAAAAoCAQ7AMAAAAAAAAAAFAQCPYBAAAAAAAAAAAoCAT7AAAAAAAAAAAAFASCfQAAAAAAAAAAAAoCwT4AAAAAAAAAAAAFgWAfAAAAAAAAAACAgkCwDwAAAAAAAAAAQEEg2AcAAAAAAAAAAKAgEOwDAAAAAAAAAABQEAj2AQAAAAAAAAAAKAgE+wAAAAAAAAAAABQEgn0AAAAAAAAAAAAKAsE+AAAAAAAAAAAABYFgHwAAAAAAAAAAgIJAsA8AAAAAAAAAAEBBINgHAAAAAAAAAACgIBDsAwAAAAAAAAAAUBAI9gEAAAAAAAAAACgIBPsAAAAAAAAAAAAUBIJ9AAAAAAAAAAAACgLBPgAAAAAAAAAAAAWBYB8AAAAAAAAAAICCQLAPAAAAAAAAAABAQSDYBwAAAAAAAAAAoCAQ7AMAAAAAAAAAAFAQCPYBAAAAAAAAAAAoCAT7AAAAAAAAAAAAFASCfQAAAAAAAAAAAAoCwT4AAAAAAAAAAAAFgWAfAAAAAAAAAACAgkCwDwAAAAAAAAAAQEEg2AcAAAAAAAAAAKAgEOwDAAAAAAAAAABQEAj2AQAAAAAAAAAAKAgE+wAAAAAAAAAAABQEgn0AAAAAAAAAAAAKAsE+AAAAAAAAAAAABYFgHwAAAAAAAAAAgIJAsA8AAAAAAAAAAEBBINgHAAAAAAAAAACgIBDsAwAAAAAAAAAAUBAI9gEAAAAAAAAAACgIBPsAAAAAAAAAAAAUBIJ9AAAAAAAAAAAACgLBPgAAAAAAAAAAAAWBYB8AAAAAAAAAAICCQLAPAAAAAAAAAABAQSDYBwAAAAAAAAAAoCAQ7AMAAAAAAAAAAFAQCPYBAAAAAAAAAAAoCAT7AAAAAAAAAAAAFASCfQAAAAAAAAAAAAoCwT4AAAAAAAAAAAAFgWAfAAAAAAAAAACAgkCwDwAAAAAAAAAAQEEg2AcAAAAAAAAAAKAgEOwDAAAAAAAAAABQEAj2AQAAAAAAAAAAKAgE+wAAAAAAAAAAABQEgn0AAAAAAAAAAAAKAsE+AAAAAAAAAAAABYFgHwAAAAAAAAAAgIJAsA8AAAAAAAAAAEBBINgHAAAAAAAAAACgIBDsAwAAAAAAAAAAUBAI9gEAAAAAAAAAACgIBPsAAAAAAAAAAAAUBIJ9AAAAAAAAAAAACgLBPgAAAAAAAAAAAAWBYB8AAAAAAAAAAICCQLAPAAAAAAAAAABAQSDYBwAAAAAAAAAAoCAQ7AMAAAAAAAAAAFAQCPYBAAAAAAAAAAAoCAT7AAAAAAAAAAAAFASCfQAAAAAAAAAAAAoCwT4AAAAAAAAAAAAFgWAfAAAAAAAAAACAgkCwDwAAAAAAAAAAQEEg2AcAAAAAAAAAAKAgEOwDAAAAAAAAAABQEAj2AQAAAAAAAAAAKAgE+wAAAAAAAAAAABQEgn0AAAAAAAAAAAAKAsE+AAAAAAAAAAAABYFgHwAAAAAAAAAAgIJAsA8AAAAAAAAAAEBBINgHAAAAAAAAAACgIBDsAwAAAAAAAAAAUBAI9gEAAAAAAAAAACgIBPsAAAAAAAAAAAAUBIJ9AAAAAAAAAAAACgLBPgAAAAAAAAAAAAWBYB8AAAAAAAAAAICCQLAPAAAAAAAAAABAQSDYBwAAAAAAAAAAoCAQ7AMAAAAAAAAAAFAQCPYBAAAAAAAAAAAoCAT7AAAAAAAAAAAAFASCfQAAAAAAAAAAAAoCwT4AAAAAAAAAAAAFgWAfAAAAAAAAAACAgkCwDwAAAAAAAAAAQEEg2AcAAAAAAAAAAKAgEOwDAAAAAAAAAABQEAj2AQAAAAAAAAAAKAgE+wAAAAAAAAAAABQEgn0AAAAAAAAAAAAKAsE+AAAAAAAAAAAABYFgHwAAAAAAAAAAgIJAsA8AAAAAAAAAAEBBINgHAAAAAAAAAACgIBDsAwAAAAAAAAAAUBAI9gEAAAAAAAAAACgIBPsAAAAAAAAAAAAUBIJ9AAAAAAAAAAAACgLBPgAAAAAAAAAAAAWBYB8AAAAAAAAAAICCQLAPAAAAAAAAAABAQSDYBwAAAAAAAAAAoCAQ7AMAAAAAAAAAAFAQCPYBAAAAAAAAAAAoCAT7AAAAAAAAAAAAFASCfQAAAAAAAAAAAAoCwT4AAAAAAAAAAAAFgWAfAAAAAAAAAACAgkCwDwAAAAAAAAAAQEEg2AcAAAAAAAAAAKAgEOwDAAAAAAAAAABQEAj2AQAAAAAAAAAAKAgE+wAAAAAAAAAAABQEgn0AAAAAAAAAAAAKAsE+AAAAAAAAAAAABYFgHwAAAAAAAAAAgIJAsA8AAAAAAAAAAEBBINgHAAAAAAAAAACgIBDsAwAAAAAAAAAAUBAI9gEAAAAAAAAAACgIBPsAAAAAAAAAAAAUBIJ9AAAAAAAAAAAACgLBPgAAAAAAAAAAAAWBYB8AAAAAAAAAAICCQLAPAAAAAAAAAABAQSDYBwAAAAAAAAAAoCAQ7AMAAAAAAAAAAFAQCPYBAAAAAAAAAAAoCAT7AAAAAAAAAAAAFASCfQAAAAAAAAAAAAoCwT4AAAAAAAAAAAAFgWAfAAAAAAAAAACAgkCwDwAAAAAAAAAAQEEg2AcAAAAAAAAAAKAgEOwDAAAAAAAAAABQEAj2AQAAAAAAAAAAKAgE+wAAAAAAAAAAABQEgn0AAAAAAAAAAAAKAsE+AAAAAAAAAAAABYFgHwAAAAAAAAAAgIJAsA8AAAAAAAAAAEBBqH7v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s7///jssLMzU1NTKyqpfv35lju3LD4/OnDlT/sRGRkbSo3N8+PDh9u3br1+/zsjIsLa27tatm62trfS8Fy5cuH//fnFxcePGjW1sbLS0tHr27EkIefr0qaOjY3Z2NiFk+/btKioqhoaGzs7OpeXh8ePHDx48GD16dGktEEsjFosXLFhQmdOctdSTPnx8tWvX7tChw+PHjz98+HD37t2ffvqpzCWz9pL88b6fP3/u7e2dkZFhZGRkbW2tpaXl4OAgMWO/fv1WrVq1fv16Dw+P8m0MAECloWUfAAAAAJTPtWvXXr16RQiZP38+v1uu6vDq1Ss6KDD816SkpKxatcrCwqJLly5Hjx5NSEjo1q3brl27jh07tm7dOkLI58+fraysdu3aNW3atNOnTw8cOHDmzJk///wzi87ExsYuW7asUaNGvXr1cnNzo4nFxcVz5841NDQcMGCAu7t7cnJyz549165d++jRoyNHjgwcOJDf/NDT03PAgAEmJibz5s0LDw+niTdv3uzRo0ejRo2WLl0aERHh5ubWuXPnW7du/f3332vWrOncuXNBQYHEtvz6669OTk52dnabN28WiUTjxo0zNDRs3LixtbW1tbV1aXvgzZs3bERaMzOzMvcYv1kcx3F79+61sbEpKipatmzZjBkznj592r179/Hjx6elpfHnGjlypIeHx7p16w4ePNi1a9cJEyaw91VjYmJYDEv1H3IysHv3blJWuE2mwMDAypzmGRkZdERvJSUl9iJwaTp37kz/efDggZCFP3v2jP7DIoO7d+8eP3789OnT3dzcpk2btnnzZhcXF+kZbWxstLW1PT09ExMThW0HAEDV+U4DgwAAAADAD+3Dhw/0drFv374fPnz48OFDeHj4rVu3aIBPTU1t8eLF/NE2qZKSEjqXlZWVwBWxWSwsLN7xPH369OTJk82bN+/du3dpeRs0aJCcJV++fLlevXrCNxm+PenReJnMzMzw8HAaOapZs+aUKVOCg4OPHDlibGy8Z88ejuOGDh1KCDl69CibZcSIEYQQNzc3+jE1NTUqKopOpqOjw1/4mjVrCCGqqqp2dnZPnjzhOK6kpIQOOGNiYiISiehkkZGRt27dUlZWJoRs27aNzZ6Wlqanp0cIad68+ZIlS3JzczmOe/PmDX2BVGLkX9qw6+DBgyxlyJAhhJCGDRveuXPnzp07pe2c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j48Pz/R89vb2AFBSUkKVlJWVvXz58tixY9zVtLS0yPdODofz+vXrxgWAEPoRnT171tPTs3///lQJjUbbunWrmZkZAERERPDUnz59ekhISK9evc6fPy98glEeR48e5XA4kyZN4pmHzs7ODv7r1EZKampqFi9ezF2HTqdPmTIFAIqLixtwbu1GaWnpkiVLLl68KHAOPtFfmfr4+voOHz5clAkTDx486OnpKSEhcf36dUVFxQacQ8dy69ata9euUbkewsjIaPDgwUD6zgtVUFBw586d0aNH81wyQ0NDbW3t48eP19XVNUucenp6oswDGBQUlJmZOX78eJ5yBwcHzn95JRENHjw4Li4uKSlp9erV7u7uDg4OCgoKANDmM/ZqaGjo6upyj+tvkCZecRHJyckZGBhQoyWE8PHx6dGjB/dkfAAgLi4+ZcqUx48fx8fH89SvqKiYNGmSra3t+fPnuV+E7t2719bW8lQuKSnp3r17Y08CIYSaDSb7EEJto1OnTitXrgQAFot16NAhgXVevnwZGxu7YsWK1glpxYoVpN9HI6xZs4ZkJLlVVlYCgLW1NVUSFxe3fv16/hmpra2tye/2vLy8xgWAEPoRFRYWck9rQNBoNNJ9j+cDwdfX9/79+wBw8eLFbt26iX6Uurq669evA4C5uTnPJvJj+9OnT48fPyYl27dv52+BfJqRqH44S5cuXbVqlY6ODv+mBr0yAjGZzMOHD6elpW3atMnf37+ioqK+mu/fv9+6dSsA/PHHHzwrMv1UysrKcnJy7t69u23bNp5N/fr1A4CoqCjhLTx69IjD4QhMw2lqan758uXly5fNFa0oyMpj/PGoqanR6fTAwED+fJAQioqK7u7uR44cOXDggIGBQUJCgoqKSp8+fZoz4tbV9CvevLKzsz98+FDfvx8AuHPnDnchg8FwcnJasWLFrl27yC1n8qEBAObm5l++fOFppKSkhP/zBCGEWh8m+xBCbWbJkiVkuclz587xLGJIHDlyxMXFhXz3EiIqKurw4cOzZ89etGjRqVOnPn/+3NBI3r17d/r06Ybu9V33799XVVU9fPgwVTJixIj58+fz15SWliaLhPTu3bvZw0AItVu+vr4COxSrqKjA//1AoKYW7dev34gRIxp0lNjY2PLycvjvpzU3JSUlkjd88uRJfbuzWKyHDx+OGDFiyZIlDTpue3Dl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A4HBPoQQQgghhBBCCCGEGggM9iGEEEIIIYQQQggh1EBgsA8hhBBCCCGEEEIIoQYCg30IIYQQQgghhBBCCDUQGOxDCCGEEEIIIYQQQqiBwGAfQgghhBBCCCGEEEINBAb7EEIIIYQQQgghhBBqIDDYhxBCCCGEEEIIIYRQA4HBPoQQQgghhBBCCCGEGggM9iGEEEIIIYQQQggh1EBgsA8hhBBCCCGEEEIIoQYCg30IIYQQQgghhBBCCDUQGOxDCCGEEEIIIYQQQqiBwGAfQgghhBBCCCGEEEINBAb7EEIIIYQQQgghhBBqIDDYhxBCCCGEEEIIIYRQA4HBPoQQQgghhBBCCCGEGggM9iGEEEIIIYQQQggh1EBgsA8hhBBCCCGEEEIIoQYCg30IIYQQQgghhBBCCDUQGOxDCCGEEEIIIYQQQqiBwGAfQgghhBBCCCGEEEINBAb7EEIIIYQQQgghhBBqIDDYhxBCCCGEEEIIIYRQA4HBPoQQQgghhBBCCCGEGggM9iGEEEIIIYQQQggh1EBgsA8hhBBCCCGEEEIIoQYCg30IIYQQQgghhBBCCDUQGOxDCCGEEEIIIYQQQqiBwGAfQgghhBBCCCGEEEINBAb7EEIIIYQQQgghhBBqIDDYhxBCCCGEEEIIIYRQA4HBPoQQQgghhBBCCCGEGggM9iGEEEIIIYQQQggh1EBgsA8hhBBCCCGEEEIIoQYCg30IIYQQQgghhBBCCDUQGOxDCCGEEEIIIYQQQqiBwGAfQgghhBBCCCGEEEINBAb7EEIIIYQQQgghhBBqIDDYhxBCCCGEEEIIIYRQA4HBPoQQQgghhBBCCCGEGggM9iGEEEIIIYQQQggh1EBgsA8hhBBCCCGEEEIIoQYCg30IIYQQQgghhBBCCDUQGOxDCCGEEEIIIYQQQqiBwGAfQgghhBBCCCGEEEINBAb7EEIIIYQQQgghhBBqIDDYhxBCCCGEEEIIIYRQA4HBPoQQQgghhBBCCCGEGggM9iGEEEIIIYQQQggh1EBgsA8hhBBCCCGEEEIIoQYCg30IIYQQQgghhBBCCDUQGOxDCCGEEEIIIYQQQqiBwGAfQgghhBBCCCGEEEINBAb7EEIIIYQQQgghhBBqIDDYhxBCCCGEEEIIIYRQA4HBPoQQQgghhBBCCCGEGggM9iGEEEIIIYQQQggh1EBgsA8hhBBC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/MuXL+nfxTt/9erV9CmPEELi4uL8V+KFCxcsLS3Pnj17//59FxcXcXHxDh068MzgWdPuFSgsLExJSen69etcLpfNZm/btg0hRBa4ceNGEqgNCQnZtGmTsrJy//798YN9586dc3Nznz17pq6ubmRkZGZmhiurHTt28KwFv/eyt7f/+vVrfHz80aNHZWRkunTpwnMEGea8du3akiVLcKl2797t5uZGpktyc3NDCCkrK8fGxvbo0aNz5866uro459SpU+lLGD9+PD5FydQo9agrEhISjIyMZs+enZycHBAQgN++iImJ6ejomJqaOjo61rr/L1++rKSktH///vj4+MDAwJUrVyKE+vfvT5/C6/z5825uboMGDcK1kNs/cNUqUF5eHnkVdODAAXqVlZ2dbWxsrK6uTmqACxcuSEhIHDt27NevX6WlpStWrGCxWPv37+dZ5siRI9H/TtAREhKCf6rIllZVVX3//n3MmDF41TxVJZOzV7jKysoLFy7Mnz/fwsJCR0dn4cKFzL/beuBmfZ07d+b/E5nC7vfv38wXiH/r6zdBR0pKCv9svDz+/PPPGTNm0H+kMDIky5MnT06dOjVp0qTevXvPnDnTzc2N/HhhZBX4LGrgBB38BE7QwQ/fbJ88eXLr1q0SEhKmpqb4zauMjMyXL19wnuTkZBcXF/LanmcCnHnz5g0dOjQ7O5uiqNDQ0J49e5qZmTXutgAA6geCfQC0CvUL9llZWZEnSZxC7+K6ePFikpMe7FNSUiI3TPSGHufOnSP58b01QujEiRM45fnz5zjl7NmzOKWuwb7Pnz9LSEggPnJycps3by4pKeHJj2/isQEDBiQlJVEU9fHjR5KooKBgY2OTm5tLUdTff/9N0lesWEEWEhsbi8M9srKyJPxBRn7p168feVpmnpOiKPLmmX82XnqwT1lZ+e3btxRFZWZmkq/IyclxuVycmd7flh7so/65T0UIsVis8ePH4808ceIEyU8escrKyki3F5KYn5+PnzDFxcXx+/AmxTDYd/78eZxt5MiROIWcVyTYh+HIBQn2JScnv3z5EkeyRo0atWbNmqSkpHnz5mloaHz9+jUxMZE066AXoKqqCrdvUlFRGT16dExMDEVRFRUV48ePRwhpamqSA4FX0b59++HDh5MUMur2rl27Xr9+LfyZgVzCN27cwCkcDichIWHv3r04fdKk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Rl1d3djYWF5enhBiamoq5by9QUFBxsbGo0aN8vLy+vLly4EDB0xNTekTPpug4/z58wMGDKDvFjk6OrJ1jx07tn///i5duhBCmjRpsv9fQUFB9D903kBbW1v658GDB9m6x48f79ix49GjR69fv75s2TJFRcVatWrduHGDfnrz5s0RI0bQbKxZs+bkyZOsXcJGnZe8BXd3927dutG1lixZcuXKldq1a7ds2ZJuU1NTMygoiC759OnTXbt20Y1PmDCBZjUxMbG0M5acnNyhQwe6vJOTE51ZODY2lj1OL1u2LDs7my3/9u1bZWVlOzu7/Px8juOKi4unTZtWq1at27dv5+bmxsbGWltba2pq3r9/ny4vFApv3bqlpKRECKlVq1Z0dDR/74mJiTo6Ora2tt++faMpfn5+tWvXvnDhglAozM3NXbNmDSGEnQfpxcTETJ48mbY169Spk5CQMGjQoEaNGnXq1Ik+BNLR4nfs2KGpqdmhQwcDAwNCiKKi4j///MPfTn5+vqOj48CBA8+dO3fp0qURI0YQQlq3bv3p0ye2TJkngTp58mTjxo3fvXtHD5wGN9PT09mJpVeTTflC5x7t06cPvRBFRUV0xXXr1rVs2ZImJiUltWnThv6/ZcuWnp6ekyZNok1kc3Nztuvylq/c3Fw7Oztzc/O3b98GBgZOnjyZrtukSRNzc3Nzc3OaGXF5eXn79++3tbUlhOjo6NDbj10+Ozs7QsiIESOuXbtGM9CwYUO65UOHDolsSnKJkCw6Onro0KE9e/a8fft2WFjY5s2bCSH169f39/dny0ifmTdv3ujo6EycODEiIqKoqOjs2bOEEDs7OzbUfQWqr02bNuno6Ny6devLly979+6lEZY6deq0adPG3Nz81atX7EAGDhw4Z86cK1euODs7m5ubE0KGDh3KbpsSZWVl7d69u127djRL169fp+nSVyOluXz5ct++fWnluWnTpmXLlgkEAhZVUVBQEDl1kvMv+WZ+//79/v376bUjhMycOZPeTteuXWPbd3Z2rl279rZt20JCQry9vefPn08I6dSpEzsQybtwcnJiD3sHDx48e/ZsgwYN2rZtS6OuCgoKT58+DQ0NtbKyatKkSadOnegTXbdu3fjHWGbxDwkJGT16ND1LVlZWnz59MjIyMjAwqFOnDiFETk7u/PnzIufZy8vLzMxs9uzZz549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", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from IPython.display import Image\n", "\n", "display(Image(filename))" ] }, { "cell_type": "markdown", "metadata": { "id": "BVd0XbEsKLWo" }, "source": [ "## Test using gemini-1.5-flash" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "xE0NSDL5KOBc" }, "outputs": [], "source": [ "import google.generativeai as genai\n", "\n", "genai.configure(api_key='your-api-key')\n", "model = genai.GenerativeModel(model_name=\"gemini-1.5-flash\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "s5UJIsd3kaM9" }, "outputs": [], "source": [ "from PIL import Image\n", "image = Image.open(filename)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 35 }, "id": "b9xOLi_3kIbZ", "outputId": "12a395cf-d1b6-4efb-eab8-b5c02fc439cc" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The BLEU score of the Transformer (base model) is 27.3.\n" ] } ], "source": [ "response = model.generate_content([image, query])\n", "print(response.text)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--multi-model-rag-with-colpali)" ] } ], "metadata": { "accelerator": "GPU", "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "name": "python" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "005d419c8b0748dea534c2419a450427": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "00bbd8a2fa9b4a3d840a749b37f54c96": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "00e5f08d85f34865979b9841e9d2a773": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "01028ad569f74dc29a5c9d47a27401c7": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "0127ed7b06724d5d8bb8e2a56cc5c14c": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "060d25b2d8ef418193a58f20f2ae21f6": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "094d3d317e9a4ed1a0965d3231bd242e": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "0b3ba88273a24551b27d3eb87c557c00": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "149b04c4dce3479fb8a1c6a1c4c8a3af": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "1577a19094de4393b5d967dbc7cbb307": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "1586af3d332941be8ac97d1652b30ebd": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_ff9cb12a41b74c16ba2dbf5959c1c7b4", "max": 2, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_7876f213bb164b6eb81b705b9038f7e8", "value": 2 } }, "1744d48292514e1b91fb3a1be97fc222": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_bd62f91be0fa4088be32d23ec24fe712", "placeholder": "​", "style": "IPY_MODEL_6ce0606aef9248499d7c2861fee9cc6b", "value": " 2/2 [00:26<00:00, 11.60s/it]" } }, "1852650c973f4691bdab7da4b56cc04d": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "18a37c079f5349b49f4bc0a8a4f6eaf6": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "1abf65da5f0642789d767157994fd97d": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_3b4027ead76e46c1abb1b0903d549410", "IPY_MODEL_f0075ee90fa9481885194654580eb7fa", "IPY_MODEL_7ed26c8ddda242d399f7d136eda9cd62" ], "layout": "IPY_MODEL_d5b0d659e60642189032dc75b59b9e51" } }, "1c40b9cf869848b1a83ba77f7f3c5787": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "1df013733bb24bf8bbbcb8adcdc5d091": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "22597e955eee4650b1ceeb85d2b7092c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_790ec46384934f7b9269c0fad62743b7", "max": 2, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_c4e0ea161cad4e68a452e5788611db5b", "value": 2 } }, "247ebeaf74034bec93a93362daea6463": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "269bc81a03b0411f976a679ab8908166": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_f0206c3142d54b3a85590dcdafd56a00", "placeholder": "​", "style": "IPY_MODEL_6c9c0c098ae446a0a91763fe23b804ff", "value": "tokenizer.json: 100%" } }, "27351ef946d343dba9723b53c68baf62": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_8840a1a4322e4f21942fcb1700edd39a", "placeholder": "​", "style": "IPY_MODEL_cce8f9f443c645589d187effe8a5876a", "value": "model.safetensors.index.json: 100%" } }, "279baca099924901bd8ad51b82d8fe08": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "299e3a69848d46f4afb3b719648cd47f": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "2b07f557454f47269952c7ee652fba6f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_f1e872fe12994cb9bf11dff9af5837a7", "placeholder": "​", "style": "IPY_MODEL_c8e77a60e9954e539164bbec4968f20a", "value": " 66.3k/66.3k [00:00<00:00, 1.95MB/s]" } }, "2d92ff270a1340a7ae88fd3a1b1f45f2": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "2f0ae41bdfa34022a5f42a70fe0a6b1e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_50112cf9b7fd42df94cc235635675918", "IPY_MODEL_6af4de23581e4dc7b1c95101b1c34528", "IPY_MODEL_ad01f019c080420b9e61bd814569fd00" ], "layout": "IPY_MODEL_64b29a7ef7be4d0ba3e18fa09c830724" } }, "3109b4ee24144b1b8867a83e86c88177": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_2d92ff270a1340a7ae88fd3a1b1f45f2", "max": 862495528, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_5abe0f2fa603470fab29f4512ce2d947", "value": 862495528 } }, "32c2355f3b684d41a330c461e5516ef1": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "32cacb6d08bd476da9a647f2d90b576f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_ac9877df817b4802a38d8deb60661e59", "placeholder": "​", "style": "IPY_MODEL_773377fe38dd45d1bc774ac1076ea556", "value": " 1.01k/1.01k [00:00<00:00, 35.4kB/s]" } }, "355fe5b49b3646deb7d1495adf6176f2": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "35ea864a6f214a709332021c5f7d2cb6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "384bbc29d97d4a13a16ee2007510477d": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "3b4027ead76e46c1abb1b0903d549410": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_ff20ca52d9ac4fdaaf7d4531534ce8be", "placeholder": "​", "style": "IPY_MODEL_501d960b037a4a4d9636fff8b23ab5d4", "value": "preprocessor_config.json: 100%" } }, "3bd8ff8e4a444257ac2cb3b68c0219ae": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_1577a19094de4393b5d967dbc7cbb307", "placeholder": "​", "style": "IPY_MODEL_9530bbb0294c451e830f8b9255437440", "value": "adapter_config.json: 100%" } }, "3dd841b3cfae4a428baf2913e2ba88ff": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "3ffc00850ce14cc48d7b36f4f9b4f3a8": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "42d839d6a9814b18a209ef4f92558a38": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_6a7e647982dd4f7f91abeb6bf7cf06cd", "placeholder": "​", "style": "IPY_MODEL_00e5f08d85f34865979b9841e9d2a773", "value": "config.json: 100%" } }, "4472fa7e19a54ef7b570343e6548845a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "454129eddd8445998ceadaf3d4eb22cc": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_384bbc29d97d4a13a16ee2007510477d", "placeholder": "​", "style": "IPY_MODEL_f6af0ae68c6844ebb812740d9d575e58", "value": " 243k/243k [00:00<00:00, 13.8MB/s]" } }, "4a27ad79866c4f6ca1af18068d189a08": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "50112cf9b7fd42df94cc235635675918": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_74bc12fa97064e51864d24dae976965d", "placeholder": "​", "style": "IPY_MODEL_f6568837113644be89b574dd1a793508", "value": "model-00001-of-00002.safetensors: 100%" } }, "501d960b037a4a4d9636fff8b23ab5d4": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "51929b7d36ca4a988fc40e8fda1e3c15": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_27351ef946d343dba9723b53c68baf62", "IPY_MODEL_e00d8efc68c04f0cbaf94f78a2062701", "IPY_MODEL_2b07f557454f47269952c7ee652fba6f" ], "layout": "IPY_MODEL_3dd841b3cfae4a428baf2913e2ba88ff" } }, "56e46bad44154c3e949858488f5e48d6": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "5abe0f2fa603470fab29f4512ce2d947": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "5cced4735fcd498694f4dd6378edc06e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_989f395d2e844ee383ca9fdcd966d795", "placeholder": "​", "style": "IPY_MODEL_fe29bdb22b78449d9288ad98576cade3", "value": " 750/750 [00:00<00:00, 22.2kB/s]" } }, "5d1eaaf9a3534d75bf08a7b9d55b4228": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "5fb46bf32ae149cb8b22c0201acfa394": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "5fe83b63acce4a0da58e43a1e2178d1d": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "613c02e127cc49da8392f256246de4fd": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_84beb09c5724411dacf756d1a97cbf2e", "IPY_MODEL_3109b4ee24144b1b8867a83e86c88177", "IPY_MODEL_a9aadc69a2424e9e91dc99440b30ee9a" ], "layout": "IPY_MODEL_1852650c973f4691bdab7da4b56cc04d" } }, "6319d58f350e4f23ac752ec2d7181634": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "6327e4519faa49e4b089906a80528504": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "64b29a7ef7be4d0ba3e18fa09c830724": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "6689d3e9ce2a40599ab9e59f42f74658": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "66df7767c39a4f05a4c5c73b2d2800cc": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "6928ef1d26254e30b1d47a287661b5e4": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "6a7e647982dd4f7f91abeb6bf7cf06cd": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "6aea6271ea2c40369bc127fc575ebdcb": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_f57371ad3fd24cac988bcf4099c59ebc", "max": 78625112, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_a6bce801cdb4473ca5b5c6dc22f99777", "value": 78625112 } }, "6af4de23581e4dc7b1c95101b1c34528": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_d2f6280aba784a1aacb2ef7de86ea6d0", "max": 4986817288, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_a07fc81a34344449ae38f5459cc5f3e9", "value": 4986817288 } }, "6b83162caac149b1beef44e5a8f54c89": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_1c40b9cf869848b1a83ba77f7f3c5787", "placeholder": "​", "style": "IPY_MODEL_35ea864a6f214a709332021c5f7d2cb6", "value": " 2/2 [00:32<00:00, 15.00s/it]" } }, "6c97c3d3c8aa46b6acc3d5430448776d": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_6689d3e9ce2a40599ab9e59f42f74658", "placeholder": "​", "style": "IPY_MODEL_6319d58f350e4f23ac752ec2d7181634", "value": "adapter_model.safetensors: 100%" } }, "6c9c0c098ae446a0a91763fe23b804ff": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "6ce0606aef9248499d7c2861fee9cc6b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "702dd498eb064fd5abef3b3514726e57": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "71fd678d42ed472ea9717c16a8afdabb": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "737b979c8a2a4ba0a6dcc1223c3f943e": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "74bc12fa97064e51864d24dae976965d": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "76e518550c514e18ab4cdf458319550e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_d9b21e1253ef4366a4bd1f7c0213827d", "IPY_MODEL_22597e955eee4650b1ceeb85d2b7092c", "IPY_MODEL_6b83162caac149b1beef44e5a8f54c89" ], "layout": "IPY_MODEL_149b04c4dce3479fb8a1c6a1c4c8a3af" } }, "773377fe38dd45d1bc774ac1076ea556": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "7876f213bb164b6eb81b705b9038f7e8": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "790ec46384934f7b9269c0fad62743b7": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "7b51c9cf0f77486295c1ff13c6ab0e41": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_b630f8ff09f7424aa3eadcc7adff5f04", "max": 750, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_5fe83b63acce4a0da58e43a1e2178d1d", "value": 750 } }, "7bb26b2c28134de9a6cd9d90c48981c4": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_005d419c8b0748dea534c2419a450427", "placeholder": "​", "style": "IPY_MODEL_b0a7fcf6a02b4772a9565ba899cd633a", "value": " 733/733 [00:00<00:00, 53.3kB/s]" } }, "7da06891502647f6ba429e66cd1d51c6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "7db0a565ceca4d35bd372a4b17634348": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "7ed26c8ddda242d399f7d136eda9cd62": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_737b979c8a2a4ba0a6dcc1223c3f943e", "placeholder": "​", "style": "IPY_MODEL_247ebeaf74034bec93a93362daea6463", "value": " 700/700 [00:00<00:00, 51.1kB/s]" } }, "84beb09c5724411dacf756d1a97cbf2e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_18a37c079f5349b49f4bc0a8a4f6eaf6", "placeholder": "​", "style": "IPY_MODEL_66df7767c39a4f05a4c5c73b2d2800cc", "value": "model-00002-of-00002.safetensors: 100%" } }, "84de9867183941c4acbdbdd4579c8c25": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "85fb6978c2af417d8b35fde8ec5eed46": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "8840a1a4322e4f21942fcb1700edd39a": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "88511f89abfd4c1995235d93d18c98d9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_7db0a565ceca4d35bd372a4b17634348", "placeholder": "​", "style": "IPY_MODEL_d3053647983b4ddba004a5d441430239", "value": "special_tokens_map.json: 100%" } }, "890ffb5523a24b919d8cfe045d5514bb": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "8d4f5e27c1aa4c3cb31b2daaeae2f99f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_4a27ad79866c4f6ca1af18068d189a08", "max": 17763459, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_00bbd8a2fa9b4a3d840a749b37f54c96", "value": 17763459 } }, "9084e84b9e58437495dfecdde43812e7": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_d211cd8d9fc643039b6dd20758c511f6", "IPY_MODEL_b5e9fbd153a24cd6b9be5403a68bdbf9", "IPY_MODEL_454129eddd8445998ceadaf3d4eb22cc" ], "layout": "IPY_MODEL_355fe5b49b3646deb7d1495adf6176f2" } }, "931dd37344b54cb3982c1609a48c69ab": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_d1f7dcac1dec405f8cb7fc1e2d371ef8", "placeholder": "​", "style": "IPY_MODEL_9d3f4a40bb774aa7ab4c2b2e9439ee4b", "value": " 78.6M/78.6M [00:00<00:00, 128MB/s]" } }, "9530bbb0294c451e830f8b9255437440": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "989f395d2e844ee383ca9fdcd966d795": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "9d3f4a40bb774aa7ab4c2b2e9439ee4b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "a07fc81a34344449ae38f5459cc5f3e9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "a6340348ea5848f6b19b60915a995039": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_6c97c3d3c8aa46b6acc3d5430448776d", "IPY_MODEL_6aea6271ea2c40369bc127fc575ebdcb", "IPY_MODEL_931dd37344b54cb3982c1609a48c69ab" ], "layout": "IPY_MODEL_b1ab21c29d4e4429848b072907c8ca14" } }, "a6a5a7c2a40645c38dc96712632d2047": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_3bd8ff8e4a444257ac2cb3b68c0219ae", "IPY_MODEL_7b51c9cf0f77486295c1ff13c6ab0e41", "IPY_MODEL_5cced4735fcd498694f4dd6378edc06e" ], "layout": "IPY_MODEL_0b3ba88273a24551b27d3eb87c557c00" } }, "a6bce801cdb4473ca5b5c6dc22f99777": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "a70eae27a93845519f7c2f32cd2e5c56": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "a9aadc69a2424e9e91dc99440b30ee9a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_890ffb5523a24b919d8cfe045d5514bb", "placeholder": "​", "style": "IPY_MODEL_702dd498eb064fd5abef3b3514726e57", "value": " 862M/862M [00:07<00:00, 47.0MB/s]" } }, "aa768f0821fb4b42a1a74fe61d13868f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_42d839d6a9814b18a209ef4f92558a38", "IPY_MODEL_fab26d5c999a4080a7cf5ec6605b3660", "IPY_MODEL_32cacb6d08bd476da9a647f2d90b576f" ], "layout": "IPY_MODEL_299e3a69848d46f4afb3b719648cd47f" } }, "ac9877df817b4802a38d8deb60661e59": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "ad01f019c080420b9e61bd814569fd00": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_094d3d317e9a4ed1a0965d3231bd242e", "placeholder": "​", "style": "IPY_MODEL_279baca099924901bd8ad51b82d8fe08", "value": " 4.99G/4.99G [00:23<00:00, 246MB/s]" } }, "b0a7fcf6a02b4772a9565ba899cd633a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "b1ab21c29d4e4429848b072907c8ca14": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "b3c15e2da048455dbf4041a7455bf6fe": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_88511f89abfd4c1995235d93d18c98d9", "IPY_MODEL_e304468db4e94484a80d1ed9657426fb", "IPY_MODEL_7bb26b2c28134de9a6cd9d90c48981c4" ], "layout": "IPY_MODEL_a70eae27a93845519f7c2f32cd2e5c56" } }, "b566e044d79545daaea0e7fb4e3133fa": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_01028ad569f74dc29a5c9d47a27401c7", "placeholder": "​", "style": "IPY_MODEL_7da06891502647f6ba429e66cd1d51c6", "value": "Loading checkpoint shards: 100%" } }, "b5e9fbd153a24cd6b9be5403a68bdbf9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_0127ed7b06724d5d8bb8e2a56cc5c14c", "max": 242696, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_6928ef1d26254e30b1d47a287661b5e4", "value": 242696 } }, "b630f8ff09f7424aa3eadcc7adff5f04": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "bd62f91be0fa4088be32d23ec24fe712": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "c153b3837c824a14bc2ffa5607702149": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "c4e0ea161cad4e68a452e5788611db5b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "c8e77a60e9954e539164bbec4968f20a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "cb6e92c399fb4d21a8118b8e7612483e": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "cce8f9f443c645589d187effe8a5876a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "ccfd1f2078894425893b8f08a67c226a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_269bc81a03b0411f976a679ab8908166", "IPY_MODEL_8d4f5e27c1aa4c3cb31b2daaeae2f99f", "IPY_MODEL_ee12e606c7d44547be504fd321ae25c2" ], "layout": "IPY_MODEL_ecd8d3d554964bd8a4062854f6b043e6" } }, "d1f7dcac1dec405f8cb7fc1e2d371ef8": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "d211cd8d9fc643039b6dd20758c511f6": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_5d1eaaf9a3534d75bf08a7b9d55b4228", "placeholder": "​", "style": "IPY_MODEL_84de9867183941c4acbdbdd4579c8c25", "value": "tokenizer_config.json: 100%" } }, "d2f6280aba784a1aacb2ef7de86ea6d0": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "d3053647983b4ddba004a5d441430239": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "d5b0d659e60642189032dc75b59b9e51": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "d9b21e1253ef4366a4bd1f7c0213827d": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_5fb46bf32ae149cb8b22c0201acfa394", "placeholder": "​", "style": "IPY_MODEL_1df013733bb24bf8bbbcb8adcdc5d091", "value": "Downloading shards: 100%" } }, "dc59ace42b9f4a3aa88dd34e9e818509": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_b566e044d79545daaea0e7fb4e3133fa", "IPY_MODEL_1586af3d332941be8ac97d1652b30ebd", "IPY_MODEL_1744d48292514e1b91fb3a1be97fc222" ], "layout": "IPY_MODEL_56e46bad44154c3e949858488f5e48d6" } }, "e00d8efc68c04f0cbaf94f78a2062701": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_3ffc00850ce14cc48d7b36f4f9b4f3a8", "max": 66301, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_4472fa7e19a54ef7b570343e6548845a", "value": 66301 } }, "e304468db4e94484a80d1ed9657426fb": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_fdbdb98d3a44479eb0f0d6752b7e7520", "max": 733, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_6327e4519faa49e4b089906a80528504", "value": 733 } }, "ecd8d3d554964bd8a4062854f6b043e6": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "ee12e606c7d44547be504fd321ae25c2": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_060d25b2d8ef418193a58f20f2ae21f6", "placeholder": "​", "style": "IPY_MODEL_c153b3837c824a14bc2ffa5607702149", "value": " 17.8M/17.8M [00:00<00:00, 236MB/s]" } }, "f0075ee90fa9481885194654580eb7fa": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_32c2355f3b684d41a330c461e5516ef1", "max": 700, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_cb6e92c399fb4d21a8118b8e7612483e", "value": 700 } }, "f0206c3142d54b3a85590dcdafd56a00": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "f1e872fe12994cb9bf11dff9af5837a7": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "f57371ad3fd24cac988bcf4099c59ebc": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "f6568837113644be89b574dd1a793508": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "f6af0ae68c6844ebb812740d9d575e58": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "fab26d5c999a4080a7cf5ec6605b3660": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_71fd678d42ed472ea9717c16a8afdabb", "max": 1015, "min": 0, "orientation": "horizontal", "style": "IPY_MODEL_85fb6978c2af417d8b35fde8ec5eed46", "value": 1015 } }, "fdbdb98d3a44479eb0f0d6752b7e7520": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "fe29bdb22b78449d9288ad98576cade3": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "ff20ca52d9ac4fdaaf7d4531534ce8be": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "ff9cb12a41b74c16ba2dbf5959c1c7b4": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } } } } }, "nbformat": 4, "nbformat_minor": 0 } ================================================ FILE: all_rag_techniques/proposition_chunking.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Propositions Chunking" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Overview\n", "\n", "This code implements the proposition chunking method, based on [research from Tony Chen, et. al.](https://doi.org/10.48550/arXiv.2312.06648). The system break downs the input text into propositions that are atomic, factual, self-contained, and concise in nature, encodes the propositions into a vectorstore, which can be later used for retrieval\n", "\n", "### Key Components\n", "\n", "1. **Document Chunking:** Splitting a document into manageable pieces for analysis.\n", "2. **Proposition Generation:** Using LLMs to break down document chunks into factual, self-contained propositions.\n", "3. **Proposition Quality Check:** Evaluating generated propositions based on accuracy, clarity, completeness, and conciseness.\n", "4. **Embedding and Vector Store:** Embedding both propositions and larger chunks of the document into a vector store for efficient retrieval.\n", "5. **Retrieval and Comparison:** Testing the retrieval system with different query sizes and comparing results from the proposition-based model with the larger chunk-based model.\n", "\n", "\"Reliable-RAG\"\n", "\n", "### Motivation\n", "\n", "The motivation behind the propositions chunking method is to build a system that breaks down a text document into concise, factual propositions for more granular and precise information retrieval. Using propositions allows for finer control and better handling of specific queries, particularly for extracting knowledge from detailed or complex texts. The comparison between using smaller proposition chunks and larger document chunks aims to evaluate the effectiveness of granular information retrieval.\n", "\n", "### Method Details\n", "\n", "1. **Loading Environment Variables:** The code begins by loading environment variables (e.g., API keys for the LLM service) to ensure that the system can access the necessary resources.\n", " \n", "2. **Document Chunking:**\n", " - The input document is split into smaller pieces (chunks) using `RecursiveCharacterTextSplitter`. This ensures that each chunk is of manageable size for the LLM to process.\n", " \n", "3. **Proposition Generation:**\n", " - Propositions are generated from each chunk using an LLM (in this case, \"llama-3.1-70b-versatile\"). The output is structured as a list of factual, self-contained statements that can be understood without additional context.\n", " \n", "4. **Quality Check:**\n", " - A second LLM evaluates the quality of the propositions by scoring them on accuracy, clarity, completeness, and conciseness. Propositions that meet the required thresholds in all categories are retained.\n", " \n", "5. **Embedding Propositions:**\n", " - Propositions that pass the quality check are embedded into a vector store using the `OllamaEmbeddings` model. This allows for similarity-based retrieval of propositions when queries are made.\n", " \n", "6. **Retrieval and Comparison:**\n", " - Two retrieval systems are built: one using the proposition-based chunks and another using larger document chunks. Both are tested with several queries to compare their performance and the precision of the returned results.\n", "\n", "### Benefits\n", "\n", "- **Granularity:** By breaking the document into small factual propositions, the system allows for highly specific retrieval, making it easier to extract precise answers from large or complex documents.\n", "- **Quality Assurance:** The use of a quality-checking LLM ensures that the generated propositions meet specific standards, improving the reliability of the retrieved information.\n", "- **Flexibility in Retrieval:** The comparison between proposition-based and larger chunk-based retrieval allows for evaluating the trade-offs between granularity and broader context in search results.\n", "\n", "### Implementation\n", "\n", "1. **Proposition Generation:** The LLM is used in conjunction with a custom prompt to generate factual statements from the document chunks.\n", "2. **Quality Checking:** The generated propositions are passed through a grading system that evaluates accuracy, clarity, completeness, and conciseness.\n", "3. **Vector Store Integration:** Propositions are stored in a FAISS vector store after being embedded using a pre-trained embedding model, allowing for efficient similarity-based search and retrieval.\n", "4. **Query Testing:** Multiple test queries are made to the vector stores (proposition-based and larger chunks) to compare the retrieval performance.\n", "\n", "### Summary\n", "\n", "This code presents a robust method for breaking down a document into self-contained propositions using LLMs. The system performs a quality check on each proposition, embeds them in a vector store, and retrieves the most relevant information based on user queries. The ability to compare granular propositions against larger document chunks provides insight into which method yields more accurate or useful results for different types of queries. The approach emphasizes the importance of high-quality proposition generation and retrieval for precise information extraction from complex documents." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu langchain langchain-community python-dotenv" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "### LLMs\n", "import os\n", "from dotenv import load_dotenv\n", "\n", "# Load environment variables from '.env' file\n", "load_dotenv()\n", "\n", "os.environ['GROQ_API_KEY'] = os.getenv('GROQ_API_KEY') # For LLM" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Test Document" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "sample_content = \"\"\"Paul Graham's essay \"Founder Mode,\" published in September 2024, challenges conventional wisdom about scaling startups, arguing that founders should maintain their unique management style rather than adopting traditional corporate practices as their companies grow.\n", "Conventional Wisdom vs. Founder Mode\n", "The essay argues that the traditional advice given to growing companies—hiring good people and giving them autonomy—often fails when applied to startups.\n", "This approach, suitable for established companies, can be detrimental to startups where the founder's vision and direct involvement are crucial. \"Founder Mode\" is presented as an emerging paradigm that is not yet fully understood or documented, contrasting with the conventional \"manager mode\" often advised by business schools and professional managers.\n", "Unique Founder Abilities\n", "Founders possess unique insights and abilities that professional managers do not, primarily because they have a deep understanding of their company's vision and culture.\n", "Graham suggests that founders should leverage these strengths rather than conform to traditional managerial practices. \"Founder Mode\" is an emerging paradigm that is not yet fully understood or documented, with Graham hoping that over time, it will become as well-understood as the traditional manager mode, allowing founders to maintain their unique approach even as their companies scale.\n", "Challenges of Scaling Startups\n", "As startups grow, there is a common belief that they must transition to a more structured managerial approach. However, many founders have found this transition problematic, as it often leads to a loss of the innovative and agile spirit that drove the startup's initial success.\n", "Brian Chesky, co-founder of Airbnb, shared his experience of being advised to run the company in a traditional managerial style, which led to poor outcomes. He eventually found success by adopting a different approach, influenced by how Steve Jobs managed Apple.\n", "Steve Jobs' Management Style\n", "Steve Jobs' management approach at Apple served as inspiration for Brian Chesky's \"Founder Mode\" at Airbnb. One notable practice was Jobs' annual retreat for the 100 most important people at Apple, regardless of their position on the organizational chart\n", ". This unconventional method allowed Jobs to maintain a startup-like environment even as Apple grew, fostering innovation and direct communication across hierarchical levels. Such practices emphasize the importance of founders staying deeply involved in their companies' operations, challenging the traditional notion of delegating responsibilities to professional managers as companies scale.\n", "\"\"\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Chunking" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "### Build Index\n", "from langchain.text_splitter import RecursiveCharacterTextSplitter\n", "from langchain_core.documents import Document\n", "from langchain_community.vectorstores import FAISS\n", "from langchain_community.embeddings import OllamaEmbeddings\n", "\n", "# Set embeddings\n", "embedding_model = OllamaEmbeddings(model='nomic-embed-text:v1.5', show_progress=True)\n", "\n", "# docs\n", "docs_list = [Document(page_content=sample_content, metadata={\"Title\": \"Paul Graham's Founder Mode Essay\", \"Source\": \"https://www.perplexity.ai/page/paul-graham-s-founder-mode-ess-t9TCyvkqRiyMQJWsHr0fnQ\"})]\n", "\n", "# Split\n", "text_splitter = RecursiveCharacterTextSplitter.from_tiktoken_encoder(\n", " chunk_size=200, chunk_overlap=50\n", ")\n", "\n", "doc_splits = text_splitter.split_documents(docs_list)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "for i, doc in enumerate(doc_splits):\n", " doc.metadata['chunk_id'] = i+1 ### adding chunk id" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Generate Propositions" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "from typing import List\n", "from langchain_core.prompts import ChatPromptTemplate, FewShotChatMessagePromptTemplate\n", "from langchain_core.pydantic_v1 import BaseModel, Field\n", "from langchain_groq import ChatGroq\n", "\n", "# Data model\n", "class GeneratePropositions(BaseModel):\n", " \"\"\"List of all the propositions in a given document\"\"\"\n", "\n", " propositions: List[str] = Field(\n", " description=\"List of propositions (factual, self-contained, and concise information)\"\n", " )\n", "\n", "\n", "# LLM with function call\n", "llm = ChatGroq(model=\"llama-3.1-70b-versatile\", temperature=0)\n", "structured_llm= llm.with_structured_output(GeneratePropositions)\n", "\n", "# Few shot prompting --- We can add more examples to make it good\n", "proposition_examples = [\n", " {\"document\": \n", " \"In 1969, Neil Armstrong became the first person to walk on the Moon during the Apollo 11 mission.\", \n", " \"propositions\": \n", " \"['Neil Armstrong was an astronaut.', 'Neil Armstrong walked on the Moon in 1969.', 'Neil Armstrong was the first person to walk on the Moon.', 'Neil Armstrong walked on the Moon during the Apollo 11 mission.', 'The Apollo 11 mission occurred in 1969.']\"\n", " },\n", "]\n", "\n", "example_proposition_prompt = ChatPromptTemplate.from_messages(\n", " [\n", " (\"human\", \"{document}\"),\n", " (\"ai\", \"{propositions}\"),\n", " ]\n", ")\n", "\n", "few_shot_prompt = FewShotChatMessagePromptTemplate(\n", " example_prompt = example_proposition_prompt,\n", " examples = proposition_examples,\n", ")\n", "\n", "# Prompt\n", "system = \"\"\"Please break down the following text into simple, self-contained propositions. Ensure that each proposition meets the following criteria:\n", "\n", " 1. Express a Single Fact: Each proposition should state one specific fact or claim.\n", " 2. Be Understandable Without Context: The proposition should be self-contained, meaning it can be understood without needing additional context.\n", " 3. Use Full Names, Not Pronouns: Avoid pronouns or ambiguous references; use full entity names.\n", " 4. Include Relevant Dates/Qualifiers: If applicable, include necessary dates, times, and qualifiers to make the fact precise.\n", " 5. Contain One Subject-Predicate Relationship: Focus on a single subject and its corresponding action or attribute, without conjunctions or multiple clauses.\"\"\"\n", "prompt = ChatPromptTemplate.from_messages(\n", " [\n", " (\"system\", system),\n", " few_shot_prompt,\n", " (\"human\", \"{document}\"),\n", " ]\n", ")\n", "\n", "proposition_generator = prompt | structured_llm" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "propositions = [] # Store all the propositions from the document\n", "\n", "for i in range(len(doc_splits)):\n", " response = proposition_generator.invoke({\"document\": doc_splits[i].page_content}) # Creating proposition\n", " for proposition in response.propositions:\n", " propositions.append(Document(page_content=proposition, metadata={\"Title\": \"Paul Graham's Founder Mode Essay\", \"Source\": \"https://www.perplexity.ai/page/paul-graham-s-founder-mode-ess-t9TCyvkqRiyMQJWsHr0fnQ\", \"chunk_id\": i+1}))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Quality Check" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "# Data model\n", "class GradePropositions(BaseModel):\n", " \"\"\"Grade a given proposition on accuracy, clarity, completeness, and conciseness\"\"\"\n", "\n", " accuracy: int = Field(\n", " description=\"Rate from 1-10 based on how well the proposition reflects the original text.\"\n", " )\n", " \n", " clarity: int = Field(\n", " description=\"Rate from 1-10 based on how easy it is to understand the proposition without additional context.\"\n", " )\n", "\n", " completeness: int = Field(\n", " description=\"Rate from 1-10 based on whether the proposition includes necessary details (e.g., dates, qualifiers).\"\n", " )\n", "\n", " conciseness: int = Field(\n", " description=\"Rate from 1-10 based on whether the proposition is concise without losing important information.\"\n", " )\n", "\n", "# LLM with function call\n", "llm = ChatGroq(model=\"llama-3.1-70b-versatile\", temperature=0)\n", "structured_llm= llm.with_structured_output(GradePropositions)\n", "\n", "# Prompt\n", "evaluation_prompt_template = \"\"\"\n", "Please evaluate the following proposition based on the criteria below:\n", "- **Accuracy**: Rate from 1-10 based on how well the proposition reflects the original text.\n", "- **Clarity**: Rate from 1-10 based on how easy it is to understand the proposition without additional context.\n", "- **Completeness**: Rate from 1-10 based on whether the proposition includes necessary details (e.g., dates, qualifiers).\n", "- **Conciseness**: Rate from 1-10 based on whether the proposition is concise without losing important information.\n", "\n", "Example:\n", "Docs: In 1969, Neil Armstrong became the first person to walk on the Moon during the Apollo 11 mission.\n", "\n", "Propositons_1: Neil Armstrong was an astronaut.\n", "Evaluation_1: \"accuracy\": 10, \"clarity\": 10, \"completeness\": 10, \"conciseness\": 10\n", "\n", "Propositons_2: Neil Armstrong walked on the Moon in 1969.\n", "Evaluation_3: \"accuracy\": 10, \"clarity\": 10, \"completeness\": 10, \"conciseness\": 10\n", "\n", "Propositons_3: Neil Armstrong was the first person to walk on the Moon.\n", "Evaluation_3: \"accuracy\": 10, \"clarity\": 10, \"completeness\": 10, \"conciseness\": 10\n", "\n", "Propositons_4: Neil Armstrong walked on the Moon during the Apollo 11 mission.\n", "Evaluation_4: \"accuracy\": 10, \"clarity\": 10, \"completeness\": 10, \"conciseness\": 10\n", "\n", "Propositons_5: The Apollo 11 mission occurred in 1969.\n", "Evaluation_5: \"accuracy\": 10, \"clarity\": 10, \"completeness\": 10, \"conciseness\": 10\n", "\n", "Format:\n", "Proposition: \"{proposition}\"\n", "Original Text: \"{original_text}\"\n", "\"\"\"\n", "prompt = ChatPromptTemplate.from_messages(\n", " [\n", " (\"system\", evaluation_prompt_template),\n", " (\"human\", \"{proposition}, {original_text}\"),\n", " ]\n", ")\n", "\n", "proposition_evaluator = prompt | structured_llm" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "17) Propostion: Startups often transition to a more structured managerial approach as they grow. \n", " Scores: {'accuracy': 8, 'clarity': 9, 'completeness': 6, 'conciseness': 8}\n", "Fail\n", "31) Propostion: Delegating responsibilities to professional managers is not always the best approach as companies scale. \n", " Scores: {'accuracy': 10, 'clarity': 10, 'completeness': 8, 'conciseness': 6}\n", "Fail\n" ] } ], "source": [ "# Define evaluation categories and thresholds\n", "evaluation_categories = [\"accuracy\", \"clarity\", \"completeness\", \"conciseness\"]\n", "thresholds = {\"accuracy\": 7, \"clarity\": 7, \"completeness\": 7, \"conciseness\": 7}\n", "\n", "# Function to evaluate proposition\n", "def evaluate_proposition(proposition, original_text):\n", " response = proposition_evaluator.invoke({\"proposition\": proposition, \"original_text\": original_text})\n", " \n", " # Parse the response to extract scores\n", " scores = {\"accuracy\": response.accuracy, \"clarity\": response.clarity, \"completeness\": response.completeness, \"conciseness\": response.conciseness} # Implement function to extract scores from the LLM response\n", " return scores\n", "\n", "# Check if the proposition passes the quality check\n", "def passes_quality_check(scores):\n", " for category, score in scores.items():\n", " if score < thresholds[category]:\n", " return False\n", " return True\n", "\n", "evaluated_propositions = [] # Store all the propositions from the document\n", "\n", "# Loop through generated propositions and evaluate them\n", "for idx, proposition in enumerate(propositions):\n", " scores = evaluate_proposition(proposition.page_content, doc_splits[proposition.metadata['chunk_id'] - 1].page_content)\n", " if passes_quality_check(scores):\n", " # Proposition passes quality check, keep it\n", " evaluated_propositions.append(proposition)\n", " else:\n", " # Proposition fails, discard or flag for further review\n", " print(f\"{idx+1}) Propostion: {proposition.page_content} \\n Scores: {scores}\")\n", " print(\"Fail\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Embedding propositions in a vectorstore" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "OllamaEmbeddings: 100%|██████████| 29/29 [00:08<00:00, 3.62it/s]\n" ] } ], "source": [ "# Add to vectorstore\n", "vectorstore_propositions = FAISS.from_documents(evaluated_propositions, embedding_model)\n", "retriever_propositions = vectorstore_propositions.as_retriever(\n", " search_type=\"similarity\",\n", " search_kwargs={'k': 4}, # number of documents to retrieve\n", " )" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "OllamaEmbeddings: 100%|██████████| 1/1 [00:00<00:00, 5.39it/s]\n" ] } ], "source": [ "query = \"Who's management approach served as inspiartion for Brian Chesky's \\\"Founder Mode\\\" at Airbnb?\"\n", "res_proposition = retriever_propositions.invoke(query)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1) Content: Brian Chesky was advised to run Airbnb in a traditional managerial style. --- Chunk_id: 3\n", "2) Content: Brian Chesky adopted a different approach to running Airbnb. --- Chunk_id: 3\n", "3) Content: Brian Chesky is a co-founder of Airbnb. --- Chunk_id: 3\n", "4) Content: Steve Jobs' management style at Apple influenced Brian Chesky's approach. --- Chunk_id: 3\n" ] } ], "source": [ "for i, r in enumerate(res_proposition):\n", " print(f\"{i+1}) Content: {r.page_content} --- Chunk_id: {r.metadata['chunk_id']}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Comparing performance with larger chunks size" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "OllamaEmbeddings: 100%|██████████| 3/3 [00:00<00:00, 5.35it/s]\n" ] } ], "source": [ "# Add to vectorstore_larger_\n", "vectorstore_larger = FAISS.from_documents(doc_splits, embedding_model)\n", "retriever_larger = vectorstore_larger.as_retriever(\n", " search_type=\"similarity\",\n", " search_kwargs={'k': 4}, # number of documents to retrieve\n", " )" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "OllamaEmbeddings: 100%|██████████| 1/1 [00:00<00:00, 6.64it/s]\n" ] } ], "source": [ "res_larger = retriever_larger.invoke(query)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1) Content: Brian Chesky, co-founder of Airbnb, shared his experience of being advised to run the company in a traditional managerial style, which led to poor outcomes. He eventually found success by adopting a different approach, influenced by how Steve Jobs managed Apple.\n", "Steve Jobs' Management Style\n", "Steve Jobs' management approach at Apple served as inspiration for Brian Chesky's \"Founder Mode\" at Airbnb. One notable practice was Jobs' annual retreat for the 100 most important people at Apple, regardless of their position on the organizational chart\n", ". This unconventional method allowed Jobs to maintain a startup-like environment even as Apple grew, fostering innovation and direct communication across hierarchical levels. Such practices emphasize the importance of founders staying deeply involved in their companies' operations, challenging the traditional notion of delegating responsibilities to professional managers as companies scale. --- Chunk_id: 3\n", "2) Content: Unique Founder Abilities\n", "Founders possess unique insights and abilities that professional managers do not, primarily because they have a deep understanding of their company's vision and culture.\n", "Graham suggests that founders should leverage these strengths rather than conform to traditional managerial practices. \"Founder Mode\" is an emerging paradigm that is not yet fully understood or documented, with Graham hoping that over time, it will become as well-understood as the traditional manager mode, allowing founders to maintain their unique approach even as their companies scale.\n", "Challenges of Scaling Startups\n", "As startups grow, there is a common belief that they must transition to a more structured managerial approach. However, many founders have found this transition problematic, as it often leads to a loss of the innovative and agile spirit that drove the startup's initial success. --- Chunk_id: 2\n", "3) Content: Paul Graham's essay \"Founder Mode,\" published in September 2024, challenges conventional wisdom about scaling startups, arguing that founders should maintain their unique management style rather than adopting traditional corporate practices as their companies grow.\n", "Conventional Wisdom vs. Founder Mode\n", "The essay argues that the traditional advice given to growing companies—hiring good people and giving them autonomy—often fails when applied to startups.\n", "This approach, suitable for established companies, can be detrimental to startups where the founder's vision and direct involvement are crucial. \"Founder Mode\" is presented as an emerging paradigm that is not yet fully understood or documented, contrasting with the conventional \"manager mode\" often advised by business schools and professional managers.\n", "Unique Founder Abilities\n", "Founders possess unique insights and abilities that professional managers do not, primarily because they have a deep understanding of their company's vision and culture. --- Chunk_id: 1\n" ] } ], "source": [ "for i, r in enumerate(res_larger):\n", " print(f\"{i+1}) Content: {r.page_content} --- Chunk_id: {r.metadata['chunk_id']}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Testing" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Test - 1" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "OllamaEmbeddings: 100%|██████████| 1/1 [00:00<00:00, 6.29it/s]\n", "OllamaEmbeddings: 100%|██████████| 1/1 [00:00<00:00, 8.06it/s]\n" ] } ], "source": [ "test_query_1 = \"what is the essay \\\"Founder Mode\\\" about?\"\n", "res_proposition = retriever_propositions.invoke(test_query_1)\n", "res_larger = retriever_larger.invoke(test_query_1)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1) Content: Founder Mode is an emerging paradigm that is not yet fully understood or documented. --- Chunk_id: 2\n", "2) Content: Founder Mode is not yet fully understood or documented. --- Chunk_id: 1\n", "3) Content: Founder Mode is an emerging paradigm. --- Chunk_id: 1\n", "4) Content: Paul Graham's essay 'Founder Mode' challenges conventional wisdom about scaling startups. --- Chunk_id: 1\n" ] } ], "source": [ "for i, r in enumerate(res_proposition):\n", " print(f\"{i+1}) Content: {r.page_content} --- Chunk_id: {r.metadata['chunk_id']}\")" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1) Content: Paul Graham's essay \"Founder Mode,\" published in September 2024, challenges conventional wisdom about scaling startups, arguing that founders should maintain their unique management style rather than adopting traditional corporate practices as their companies grow.\n", "Conventional Wisdom vs. Founder Mode\n", "The essay argues that the traditional advice given to growing companies—hiring good people and giving them autonomy—often fails when applied to startups.\n", "This approach, suitable for established companies, can be detrimental to startups where the founder's vision and direct involvement are crucial. \"Founder Mode\" is presented as an emerging paradigm that is not yet fully understood or documented, contrasting with the conventional \"manager mode\" often advised by business schools and professional managers.\n", "Unique Founder Abilities\n", "Founders possess unique insights and abilities that professional managers do not, primarily because they have a deep understanding of their company's vision and culture. --- Chunk_id: 1\n", "2) Content: Unique Founder Abilities\n", "Founders possess unique insights and abilities that professional managers do not, primarily because they have a deep understanding of their company's vision and culture.\n", "Graham suggests that founders should leverage these strengths rather than conform to traditional managerial practices. \"Founder Mode\" is an emerging paradigm that is not yet fully understood or documented, with Graham hoping that over time, it will become as well-understood as the traditional manager mode, allowing founders to maintain their unique approach even as their companies scale.\n", "Challenges of Scaling Startups\n", "As startups grow, there is a common belief that they must transition to a more structured managerial approach. However, many founders have found this transition problematic, as it often leads to a loss of the innovative and agile spirit that drove the startup's initial success. --- Chunk_id: 2\n", "3) Content: Brian Chesky, co-founder of Airbnb, shared his experience of being advised to run the company in a traditional managerial style, which led to poor outcomes. He eventually found success by adopting a different approach, influenced by how Steve Jobs managed Apple.\n", "Steve Jobs' Management Style\n", "Steve Jobs' management approach at Apple served as inspiration for Brian Chesky's \"Founder Mode\" at Airbnb. One notable practice was Jobs' annual retreat for the 100 most important people at Apple, regardless of their position on the organizational chart\n", ". This unconventional method allowed Jobs to maintain a startup-like environment even as Apple grew, fostering innovation and direct communication across hierarchical levels. Such practices emphasize the importance of founders staying deeply involved in their companies' operations, challenging the traditional notion of delegating responsibilities to professional managers as companies scale. --- Chunk_id: 3\n" ] } ], "source": [ "for i, r in enumerate(res_larger):\n", " print(f\"{i+1}) Content: {r.page_content} --- Chunk_id: {r.metadata['chunk_id']}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Test - 2" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "OllamaEmbeddings: 100%|██████████| 1/1 [00:00<00:00, 3.22it/s]\n", "OllamaEmbeddings: 100%|██████████| 1/1 [00:00<00:00, 15.18it/s]\n" ] } ], "source": [ "test_query_2 = \"who is the co-founder of Airbnb?\"\n", "res_proposition = retriever_propositions.invoke(test_query_2)\n", "res_larger = retriever_larger.invoke(test_query_2)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1) Content: Brian Chesky is a co-founder of Airbnb. --- Chunk_id: 3\n", "2) Content: Brian Chesky adopted a different approach to running Airbnb. --- Chunk_id: 3\n", "3) Content: Brian Chesky was advised to run Airbnb in a traditional managerial style. --- Chunk_id: 3\n", "4) Content: Running Airbnb in a traditional managerial style led to poor outcomes. --- Chunk_id: 3\n" ] } ], "source": [ "for i, r in enumerate(res_proposition):\n", " print(f\"{i+1}) Content: {r.page_content} --- Chunk_id: {r.metadata['chunk_id']}\")" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1) Content: Brian Chesky, co-founder of Airbnb, shared his experience of being advised to run the company in a traditional managerial style, which led to poor outcomes. He eventually found success by adopting a different approach, influenced by how Steve Jobs managed Apple.\n", "Steve Jobs' Management Style\n", "Steve Jobs' management approach at Apple served as inspiration for Brian Chesky's \"Founder Mode\" at Airbnb. One notable practice was Jobs' annual retreat for the 100 most important people at Apple, regardless of their position on the organizational chart\n", ". This unconventional method allowed Jobs to maintain a startup-like environment even as Apple grew, fostering innovation and direct communication across hierarchical levels. Such practices emphasize the importance of founders staying deeply involved in their companies' operations, challenging the traditional notion of delegating responsibilities to professional managers as companies scale. --- Chunk_id: 3\n", "2) Content: Paul Graham's essay \"Founder Mode,\" published in September 2024, challenges conventional wisdom about scaling startups, arguing that founders should maintain their unique management style rather than adopting traditional corporate practices as their companies grow.\n", "Conventional Wisdom vs. Founder Mode\n", "The essay argues that the traditional advice given to growing companies—hiring good people and giving them autonomy—often fails when applied to startups.\n", "This approach, suitable for established companies, can be detrimental to startups where the founder's vision and direct involvement are crucial. \"Founder Mode\" is presented as an emerging paradigm that is not yet fully understood or documented, contrasting with the conventional \"manager mode\" often advised by business schools and professional managers.\n", "Unique Founder Abilities\n", "Founders possess unique insights and abilities that professional managers do not, primarily because they have a deep understanding of their company's vision and culture. --- Chunk_id: 1\n", "3) Content: Unique Founder Abilities\n", "Founders possess unique insights and abilities that professional managers do not, primarily because they have a deep understanding of their company's vision and culture.\n", "Graham suggests that founders should leverage these strengths rather than conform to traditional managerial practices. \"Founder Mode\" is an emerging paradigm that is not yet fully understood or documented, with Graham hoping that over time, it will become as well-understood as the traditional manager mode, allowing founders to maintain their unique approach even as their companies scale.\n", "Challenges of Scaling Startups\n", "As startups grow, there is a common belief that they must transition to a more structured managerial approach. However, many founders have found this transition problematic, as it often leads to a loss of the innovative and agile spirit that drove the startup's initial success. --- Chunk_id: 2\n" ] } ], "source": [ "for i, r in enumerate(res_larger):\n", " print(f\"{i+1}) Content: {r.page_content} --- Chunk_id: {r.metadata['chunk_id']}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Test - 3" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "OllamaEmbeddings: 100%|██████████| 1/1 [00:00<00:00, 10.09it/s]\n", "OllamaEmbeddings: 100%|██████████| 1/1 [00:00<00:00, 7.71it/s]\n" ] } ], "source": [ "test_query_3 = \"when was the essay \\\"founder mode\\\" published?\"\n", "res_proposition = retriever_propositions.invoke(test_query_3)\n", "res_larger = retriever_larger.invoke(test_query_3)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1) Content: Paul Graham published an essay called 'Founder Mode' in September 2024. --- Chunk_id: 1\n", "2) Content: Founder Mode is an emerging paradigm. --- Chunk_id: 1\n", "3) Content: Founder Mode is an emerging paradigm that is not yet fully understood or documented. --- Chunk_id: 2\n", "4) Content: Founder Mode is not yet fully understood or documented. --- Chunk_id: 1\n" ] } ], "source": [ "for i, r in enumerate(res_proposition):\n", " print(f\"{i+1}) Content: {r.page_content} --- Chunk_id: {r.metadata['chunk_id']}\")" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1) Content: Paul Graham's essay \"Founder Mode,\" published in September 2024, challenges conventional wisdom about scaling startups, arguing that founders should maintain their unique management style rather than adopting traditional corporate practices as their companies grow.\n", "Conventional Wisdom vs. Founder Mode\n", "The essay argues that the traditional advice given to growing companies—hiring good people and giving them autonomy—often fails when applied to startups.\n", "This approach, suitable for established companies, can be detrimental to startups where the founder's vision and direct involvement are crucial. \"Founder Mode\" is presented as an emerging paradigm that is not yet fully understood or documented, contrasting with the conventional \"manager mode\" often advised by business schools and professional managers.\n", "Unique Founder Abilities\n", "Founders possess unique insights and abilities that professional managers do not, primarily because they have a deep understanding of their company's vision and culture. --- Chunk_id: 1\n", "2) Content: Unique Founder Abilities\n", "Founders possess unique insights and abilities that professional managers do not, primarily because they have a deep understanding of their company's vision and culture.\n", "Graham suggests that founders should leverage these strengths rather than conform to traditional managerial practices. \"Founder Mode\" is an emerging paradigm that is not yet fully understood or documented, with Graham hoping that over time, it will become as well-understood as the traditional manager mode, allowing founders to maintain their unique approach even as their companies scale.\n", "Challenges of Scaling Startups\n", "As startups grow, there is a common belief that they must transition to a more structured managerial approach. However, many founders have found this transition problematic, as it often leads to a loss of the innovative and agile spirit that drove the startup's initial success. --- Chunk_id: 2\n", "3) Content: Brian Chesky, co-founder of Airbnb, shared his experience of being advised to run the company in a traditional managerial style, which led to poor outcomes. He eventually found success by adopting a different approach, influenced by how Steve Jobs managed Apple.\n", "Steve Jobs' Management Style\n", "Steve Jobs' management approach at Apple served as inspiration for Brian Chesky's \"Founder Mode\" at Airbnb. One notable practice was Jobs' annual retreat for the 100 most important people at Apple, regardless of their position on the organizational chart\n", ". This unconventional method allowed Jobs to maintain a startup-like environment even as Apple grew, fostering innovation and direct communication across hierarchical levels. Such practices emphasize the importance of founders staying deeply involved in their companies' operations, challenging the traditional notion of delegating responsibilities to professional managers as companies scale. --- Chunk_id: 3\n" ] } ], "source": [ "for i, r in enumerate(res_larger):\n", " print(f\"{i+1}) Content: {r.page_content} --- Chunk_id: {r.metadata['chunk_id']}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Comparison\n", "\n", "| **Aspect** | **Proposition-Based Retrieval** | **Simple Chunk Retrieval** |\n", "|---------------------------|--------------------------------------------------------------------------|--------------------------------------------------------------------------|\n", "| **Precision in Response** | High: Delivers focused and direct answers. | Medium: Provides more context but may include irrelevant information. |\n", "| **Clarity and Brevity** | High: Clear and concise, avoids unnecessary details. | Medium: More comprehensive but can be overwhelming. |\n", "| **Contextual Richness** | Low: May lack context, focusing on specific propositions. | High: Provides additional context and details. |\n", "| **Comprehensiveness** | Low: May omit broader context or supplementary details. | High: Offers a more complete view with extensive information. |\n", "| **Narrative Flow** | Medium: Can be fragmented or disjointed. | High: Preserves the logical flow and coherence of the original document. |\n", "| **Information Overload** | Low: Less likely to overwhelm with excess information. | High: Risk of overwhelming the user with too much information. |\n", "| **Use Case Suitability** | Best for quick, factual queries. | Best for complex queries requiring in-depth understanding. |\n", "| **Efficiency** | High: Provides quick, targeted responses. | Medium: May require more effort to sift through additional content. |\n", "| **Specificity** | High: Precise and targeted responses. | Medium: Answers may be less targeted due to inclusion of broader context.|\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--proposition-chunking)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/query_transformations.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Query Transformations for Improved Retrieval in RAG Systems\n", "\n", "## Overview\n", "\n", "This code implements three query transformation techniques to enhance the retrieval process in Retrieval-Augmented Generation (RAG) systems:\n", "\n", "1. Query Rewriting\n", "2. Step-back Prompting\n", "3. Sub-query Decomposition\n", "\n", "Each technique aims to improve the relevance and comprehensiveness of retrieved information by modifying or expanding the original query.\n", "\n", "## Motivation\n", "\n", "RAG systems often face challenges in retrieving the most relevant information, especially when dealing with complex or ambiguous queries. These query transformation techniques address this issue by reformulating queries to better match relevant documents or to retrieve more comprehensive information.\n", "\n", "## Key Components\n", "\n", "1. Query Rewriting: Reformulates queries to be more specific and detailed.\n", "2. Step-back Prompting: Generates broader queries for better context retrieval.\n", "3. Sub-query Decomposition: Breaks down complex queries into simpler sub-queries.\n", "\n", "## Method Details\n", "\n", "### 1. Query Rewriting\n", "\n", "- **Purpose**: To make queries more specific and detailed, improving the likelihood of retrieving relevant information.\n", "- **Implementation**:\n", " - Uses a GPT-4 model with a custom prompt template.\n", " - Takes the original query and reformulates it to be more specific and detailed.\n", "\n", "### 2. Step-back Prompting\n", "\n", "- **Purpose**: To generate broader, more general queries that can help retrieve relevant background information.\n", "- **Implementation**:\n", " - Uses a GPT-4 model with a custom prompt template.\n", " - Takes the original query and generates a more general \"step-back\" query.\n", "\n", "### 3. Sub-query Decomposition\n", "\n", "- **Purpose**: To break down complex queries into simpler sub-queries for more comprehensive information retrieval.\n", "- **Implementation**:\n", " - Uses a GPT-4 model with a custom prompt template.\n", " - Decomposes the original query into 2-4 simpler sub-queries.\n", "\n", "## Benefits of these Approaches\n", "\n", "1. **Improved Relevance**: Query rewriting helps in retrieving more specific and relevant information.\n", "2. **Better Context**: Step-back prompting allows for retrieval of broader context and background information.\n", "3. **Comprehensive Results**: Sub-query decomposition enables retrieval of information that covers different aspects of a complex query.\n", "4. **Flexibility**: Each technique can be used independently or in combination, depending on the specific use case.\n", "\n", "## Implementation Details\n", "\n", "- All techniques use OpenAI's GPT-4 model for query transformation.\n", "- Custom prompt templates are used to guide the model in generating appropriate transformations.\n", "- The code provides separate functions for each transformation technique, allowing for easy integration into existing RAG systems.\n", "\n", "## Example Use Case\n", "\n", "The code demonstrates each technique using the example query:\n", "\"What are the impacts of climate change on the environment?\"\n", "\n", "- **Query Rewriting** expands this to include specific aspects like temperature changes and biodiversity.\n", "- **Step-back Prompting** generalizes it to \"What are the general effects of climate change?\"\n", "- **Sub-query Decomposition** breaks it down into questions about biodiversity, oceans, weather patterns, and terrestrial environments.\n", "\n", "## Conclusion\n", "\n", "These query transformation techniques offer powerful ways to enhance the retrieval capabilities of RAG systems. By reformulating queries in various ways, they can significantly improve the relevance, context, and comprehensiveness of retrieved information. These methods are particularly valuable in domains where queries can be complex or multifaceted, such as scientific research, legal analysis, or comprehensive fact-finding tasks." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain langchain-openai python-dotenv" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from langchain_openai import ChatOpenAI\n", "from langchain.prompts import PromptTemplate\n", "\n", "import os\n", "from dotenv import load_dotenv\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1 - Query Rewriting: Reformulating queries to improve retrieval." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "re_write_llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\", max_tokens=4000)\n", "\n", "# Create a prompt template for query rewriting\n", "query_rewrite_template = \"\"\"You are an AI assistant tasked with reformulating user queries to improve retrieval in a RAG system. \n", "Given the original query, rewrite it to be more specific, detailed, and likely to retrieve relevant information.\n", "\n", "Original query: {original_query}\n", "\n", "Rewritten query:\"\"\"\n", "\n", "query_rewrite_prompt = PromptTemplate(\n", " input_variables=[\"original_query\"],\n", " template=query_rewrite_template\n", ")\n", "\n", "# Create an LLMChain for query rewriting\n", "query_rewriter = query_rewrite_prompt | re_write_llm\n", "\n", "def rewrite_query(original_query):\n", " \"\"\"\n", " Rewrite the original query to improve retrieval.\n", " \n", " Args:\n", " original_query (str): The original user query\n", " \n", " Returns:\n", " str: The rewritten query\n", " \"\"\"\n", " response = query_rewriter.invoke(original_query)\n", " return response.content" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Demonstrate on a use case" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Original query: What are the impacts of climate change on the environment?\n", "\n", "Rewritten query: What are the specific effects of climate change on various ecosystems, including changes in temperature, precipitation patterns, sea levels, and biodiversity?\n" ] } ], "source": [ "# example query over the understanding climate change dataset\n", "original_query = \"What are the impacts of climate change on the environment?\"\n", "rewritten_query = rewrite_query(original_query)\n", "print(\"Original query:\", original_query)\n", "print(\"\\nRewritten query:\", rewritten_query)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2 - Step-back Prompting: Generating broader queries for better context retrieval.\n", "\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "step_back_llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\", max_tokens=4000)\n", "\n", "\n", "# Create a prompt template for step-back prompting\n", "step_back_template = \"\"\"You are an AI assistant tasked with generating broader, more general queries to improve context retrieval in a RAG system.\n", "Given the original query, generate a step-back query that is more general and can help retrieve relevant background information.\n", "\n", "Original query: {original_query}\n", "\n", "Step-back query:\"\"\"\n", "\n", "step_back_prompt = PromptTemplate(\n", " input_variables=[\"original_query\"],\n", " template=step_back_template\n", ")\n", "\n", "# Create an LLMChain for step-back prompting\n", "step_back_chain = step_back_prompt | step_back_llm\n", "\n", "def generate_step_back_query(original_query):\n", " \"\"\"\n", " Generate a step-back query to retrieve broader context.\n", " \n", " Args:\n", " original_query (str): The original user query\n", " \n", " Returns:\n", " str: The step-back query\n", " \"\"\"\n", " response = step_back_chain.invoke(original_query)\n", " return response.content" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Demonstrate on a use case" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Original query: What are the impacts of climate change on the environment?\n", "\n", "Step-back query: What are the general effects of climate change?\n" ] } ], "source": [ "# example query over the understanding climate change dataset\n", "original_query = \"What are the impacts of climate change on the environment?\"\n", "step_back_query = generate_step_back_query(original_query)\n", "print(\"Original query:\", original_query)\n", "print(\"\\nStep-back query:\", step_back_query)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3- Sub-query Decomposition: Breaking complex queries into simpler sub-queries." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "sub_query_llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\", max_tokens=4000)\n", "\n", "# Create a prompt template for sub-query decomposition\n", "subquery_decomposition_template = \"\"\"You are an AI assistant tasked with breaking down complex queries into simpler sub-queries for a RAG system.\n", "Given the original query, decompose it into 2-4 simpler sub-queries that, when answered together, would provide a comprehensive response to the original query.\n", "\n", "Original query: {original_query}\n", "\n", "example: What are the impacts of climate change on the environment?\n", "\n", "Sub-queries:\n", "1. What are the impacts of climate change on biodiversity?\n", "2. How does climate change affect the oceans?\n", "3. What are the effects of climate change on agriculture?\n", "4. What are the impacts of climate change on human health?\"\"\"\n", "\n", "\n", "subquery_decomposition_prompt = PromptTemplate(\n", " input_variables=[\"original_query\"],\n", " template=subquery_decomposition_template\n", ")\n", "\n", "# Create an LLMChain for sub-query decomposition\n", "subquery_decomposer_chain = subquery_decomposition_prompt | sub_query_llm\n", "\n", "def decompose_query(original_query: str):\n", " \"\"\"\n", " Decompose the original query into simpler sub-queries.\n", " \n", " Args:\n", " original_query (str): The original complex query\n", " \n", " Returns:\n", " List[str]: A list of simpler sub-queries\n", " \"\"\"\n", " response = subquery_decomposer_chain.invoke(original_query).content\n", " sub_queries = [q.strip() for q in response.split('\\n') if q.strip() and not q.strip().startswith('Sub-queries:')]\n", " return sub_queries" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Demonstrate on a use case" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Sub-queries:\n", "Original query: What are the impacts of climate change on the environment?\n", "1. How does climate change affect biodiversity and ecosystems?\n", "2. What are the impacts of climate change on oceanic conditions and marine life?\n", "3. How does climate change influence weather patterns and extreme weather events?\n", "4. What are the effects of climate change on terrestrial environments, such as forests and deserts?\n" ] } ], "source": [ "# example query over the understanding climate change dataset\n", "original_query = \"What are the impacts of climate change on the environment?\"\n", "sub_queries = decompose_query(original_query)\n", "print(\"\\nSub-queries:\")\n", "for i, sub_query in enumerate(sub_queries, 1):\n", " print(sub_query)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--query-transformations)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/raptor.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# RAPTOR: Recursive Abstractive Processing and Thematic Organization for Retrieval\n", "\n", "## Overview\n", "RAPTOR is an advanced information retrieval and question-answering system that combines hierarchical document summarization, embedding-based retrieval, and contextual answer generation. It aims to efficiently handle large document collections by creating a multi-level tree of summaries, allowing for both broad and detailed information retrieval.\n", "\n", "## Motivation\n", "Traditional retrieval systems often struggle with large document sets, either missing important details or getting overwhelmed by irrelevant information. RAPTOR addresses this by creating a hierarchical structure of the document collection, allowing it to navigate between high-level concepts and specific details as needed.\n", "\n", "## Key Components\n", "1. **Tree Building**: Creates a hierarchical structure of document summaries.\n", "2. **Embedding and Clustering**: Organizes documents and summaries based on semantic similarity.\n", "3. **Vectorstore**: Efficiently stores and retrieves document and summary embeddings.\n", "4. **Contextual Retriever**: Selects the most relevant information for a given query.\n", "5. **Answer Generation**: Produces coherent responses based on retrieved information.\n", "\n", "## Method Details\n", "\n", "### Tree Building\n", "1. Start with original documents at level 0.\n", "2. For each level:\n", " - Embed the texts using a language model.\n", " - Cluster the embeddings (e.g., using Gaussian Mixture Models).\n", " - Generate summaries for each cluster.\n", " - Use these summaries as the texts for the next level.\n", "3. Continue until reaching a single summary or a maximum level.\n", "\n", "### Embedding and Retrieval\n", "1. Embed all documents and summaries from all levels of the tree.\n", "2. Store these embeddings in a vectorstore (e.g., FAISS) for efficient similarity search.\n", "3. For a given query:\n", " - Embed the query.\n", " - Retrieve the most similar documents/summaries from the vectorstore.\n", "\n", "### Contextual Compression\n", "1. Take the retrieved documents/summaries.\n", "2. Use a language model to extract only the most relevant parts for the given query.\n", "\n", "### Answer Generation\n", "1. Combine the relevant parts into a context.\n", "2. Use a language model to generate an answer based on this context and the original query.\n", "\n", "## Benefits of this Approach\n", "1. **Scalability**: Can handle large document collections by working with summaries at different levels.\n", "2. **Flexibility**: Capable of providing both high-level overviews and specific details.\n", "3. **Context-Awareness**: Retrieves information from the most appropriate level of abstraction.\n", "4. **Efficiency**: Uses embeddings and vectorstore for fast retrieval.\n", "5. **Traceability**: Maintains links between summaries and original documents, allowing for source verification.\n", "\n", "## Conclusion\n", "RAPTOR represents a significant advancement in information retrieval and question-answering systems. By combining hierarchical summarization with embedding-based retrieval and contextual answer generation, it offers a powerful and flexible approach to handling large document collections. The system's ability to navigate different levels of abstraction allows it to provide relevant and contextually appropriate answers to a wide range of queries.\n", "\n", "While RAPTOR shows great promise, future work could focus on optimizing the tree-building process, improving summary quality, and enhancing the retrieval mechanism to better handle complex, multi-faceted queries. Additionally, integrating this approach with other AI technologies could lead to even more sophisticated information processing systems." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"RAPTOR\"\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu langchain langchain-openai matplotlib numpy pandas python-dotenv scikit-learn" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 75, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", "from typing import List, Dict, Any\n", "from sklearn.mixture import GaussianMixture\n", "from langchain.chains.llm import LLMChain\n", "from langchain.embeddings import OpenAIEmbeddings\n", "from langchain.vectorstores import FAISS\n", "from langchain_openai import ChatOpenAI\n", "from langchain.prompts import ChatPromptTemplate\n", "from langchain.retrievers import ContextualCompressionRetriever\n", "from langchain.retrievers.document_compressors import LLMChainExtractor\n", "from langchain.schema import AIMessage\n", "from langchain.docstore.document import Document\n", "\n", "import matplotlib.pyplot as plt\n", "import logging\n", "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define logging, llm and embeddings" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [], "source": [ "# Set up logging\n", "logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')\n", "\n", "embeddings = OpenAIEmbeddings()\n", "llm = ChatOpenAI(model_name=\"gpt-4o-mini\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Helper Functions\n" ] }, { "cell_type": "code", "execution_count": 85, "metadata": {}, "outputs": [], "source": [ "def extract_text(item):\n", " \"\"\"Extract text content from either a string or an AIMessage object.\"\"\"\n", " if isinstance(item, AIMessage):\n", " return item.content\n", " return item\n", "\n", "def embed_texts(texts: List[str]) -> List[List[float]]:\n", " \"\"\"Embed texts using OpenAIEmbeddings.\"\"\"\n", " logging.info(f\"Embedding {len(texts)} texts\")\n", " return embeddings.embed_documents([extract_text(text) for text in texts])\n", "\n", "def perform_clustering(embeddings: np.ndarray, n_clusters: int = 10) -> np.ndarray:\n", " \"\"\"Perform clustering on embeddings using Gaussian Mixture Model.\"\"\"\n", " logging.info(f\"Performing clustering with {n_clusters} clusters\")\n", " gm = GaussianMixture(n_components=n_clusters, random_state=42)\n", " return gm.fit_predict(embeddings)\n", "\n", "def summarize_texts(texts: List[str]) -> str:\n", " \"\"\"Summarize a list of texts using OpenAI.\"\"\"\n", " logging.info(f\"Summarizing {len(texts)} texts\")\n", " prompt = ChatPromptTemplate.from_template(\n", " \"Summarize the following text concisely:\\n\\n{text}\"\n", " )\n", " chain = prompt | llm\n", " input_data = {\"text\": texts}\n", " return chain.invoke(input_data)\n", "\n", "def visualize_clusters(embeddings: np.ndarray, labels: np.ndarray, level: int):\n", " \"\"\"Visualize clusters using PCA.\"\"\"\n", " from sklearn.decomposition import PCA\n", " pca = PCA(n_components=2)\n", " reduced_embeddings = pca.fit_transform(embeddings)\n", " \n", " plt.figure(figsize=(10, 8))\n", " scatter = plt.scatter(reduced_embeddings[:, 0], reduced_embeddings[:, 1], c=labels, cmap='viridis')\n", " plt.colorbar(scatter)\n", " plt.title(f'Cluster Visualization - Level {level}')\n", " plt.xlabel('First Principal Component')\n", " plt.ylabel('Second Principal Component')\n", " plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### RAPTOR Core Function\n" ] }, { "cell_type": "code", "execution_count": 86, "metadata": {}, "outputs": [], "source": [ "\n", "\n", "def build_raptor_tree(texts: List[str], max_levels: int = 3) -> Dict[int, pd.DataFrame]:\n", " \"\"\"Build the RAPTOR tree structure with level metadata and parent-child relationships.\"\"\"\n", " results = {}\n", " current_texts = [extract_text(text) for text in texts]\n", " current_metadata = [{\"level\": 0, \"origin\": \"original\", \"parent_id\": None} for _ in texts]\n", " \n", " for level in range(1, max_levels + 1):\n", " logging.info(f\"Processing level {level}\")\n", " \n", " embeddings = embed_texts(current_texts)\n", " n_clusters = min(10, len(current_texts) // 2)\n", " cluster_labels = perform_clustering(np.array(embeddings), n_clusters)\n", " \n", " df = pd.DataFrame({\n", " 'text': current_texts,\n", " 'embedding': embeddings,\n", " 'cluster': cluster_labels,\n", " 'metadata': current_metadata\n", " })\n", " \n", " results[level-1] = df\n", " \n", " summaries = []\n", " new_metadata = []\n", " for cluster in df['cluster'].unique():\n", " cluster_docs = df[df['cluster'] == cluster]\n", " cluster_texts = cluster_docs['text'].tolist()\n", " cluster_metadata = cluster_docs['metadata'].tolist()\n", " summary = summarize_texts(cluster_texts)\n", " summaries.append(summary)\n", " new_metadata.append({\n", " \"level\": level,\n", " \"origin\": f\"summary_of_cluster_{cluster}_level_{level-1}\",\n", " \"child_ids\": [meta.get('id') for meta in cluster_metadata],\n", " \"id\": f\"summary_{level}_{cluster}\"\n", " })\n", " \n", " current_texts = summaries\n", " current_metadata = new_metadata\n", " \n", " if len(current_texts) <= 1:\n", " results[level] = pd.DataFrame({\n", " 'text': current_texts,\n", " 'embedding': embed_texts(current_texts),\n", " 'cluster': [0],\n", " 'metadata': current_metadata\n", " })\n", " logging.info(f\"Stopping at level {level} as we have only one summary\")\n", " break\n", " \n", " return results" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Vectorstore Function\n" ] }, { "cell_type": "code", "execution_count": 87, "metadata": {}, "outputs": [], "source": [ "def build_vectorstore(tree_results: Dict[int, pd.DataFrame]) -> FAISS:\n", " \"\"\"Build a FAISS vectorstore from all texts in the RAPTOR tree.\"\"\"\n", " all_texts = []\n", " all_embeddings = []\n", " all_metadatas = []\n", " \n", " for level, df in tree_results.items():\n", " all_texts.extend([str(text) for text in df['text'].tolist()])\n", " all_embeddings.extend([embedding.tolist() if isinstance(embedding, np.ndarray) else embedding for embedding in df['embedding'].tolist()])\n", " all_metadatas.extend(df['metadata'].tolist())\n", " \n", " logging.info(f\"Building vectorstore with {len(all_texts)} texts\")\n", " \n", " # Create Document objects manually to ensure correct types\n", " documents = [Document(page_content=str(text), metadata=metadata) \n", " for text, metadata in zip(all_texts, all_metadatas)]\n", " \n", " return FAISS.from_documents(documents, embeddings)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define tree traversal retrieval" ] }, { "cell_type": "code", "execution_count": 88, "metadata": {}, "outputs": [], "source": [ "def tree_traversal_retrieval(query: str, vectorstore: FAISS, k: int = 3) -> List[Document]:\n", " \"\"\"Perform tree traversal retrieval.\"\"\"\n", " query_embedding = embeddings.embed_query(query)\n", " \n", " def retrieve_level(level: int, parent_ids: List[str] = None) -> List[Document]:\n", " if parent_ids:\n", " docs = vectorstore.similarity_search_by_vector_with_relevance_scores(\n", " query_embedding,\n", " k=k,\n", " filter=lambda meta: meta['level'] == level and meta['id'] in parent_ids\n", " )\n", " else:\n", " docs = vectorstore.similarity_search_by_vector_with_relevance_scores(\n", " query_embedding,\n", " k=k,\n", " filter=lambda meta: meta['level'] == level\n", " )\n", " \n", " if not docs or level == 0:\n", " return docs\n", " \n", " child_ids = [doc.metadata.get('child_ids', []) for doc, _ in docs]\n", " child_ids = [item for sublist in child_ids for item in sublist] # Flatten the list\n", " \n", " child_docs = retrieve_level(level - 1, child_ids)\n", " return docs + child_docs\n", " \n", " max_level = max(doc.metadata['level'] for doc in vectorstore.docstore.values())\n", " return retrieve_level(max_level)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create Retriever\n" ] }, { "cell_type": "code", "execution_count": 80, "metadata": {}, "outputs": [], "source": [ "def create_retriever(vectorstore: FAISS) -> ContextualCompressionRetriever:\n", " \"\"\"Create a retriever with contextual compression.\"\"\"\n", " logging.info(\"Creating contextual compression retriever\")\n", " base_retriever = vectorstore.as_retriever()\n", " \n", " prompt = ChatPromptTemplate.from_template(\n", " \"Given the following context and question, extract only the relevant information for answering the question:\\n\\n\"\n", " \"Context: {context}\\n\"\n", " \"Question: {question}\\n\\n\"\n", " \"Relevant Information:\"\n", " )\n", " \n", " extractor = LLMChainExtractor.from_llm(llm, prompt=prompt)\n", " \n", " return ContextualCompressionRetriever(\n", " base_compressor=extractor,\n", " base_retriever=base_retriever\n", " )\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define hierarchical retrieval" ] }, { "cell_type": "code", "execution_count": 100, "metadata": {}, "outputs": [], "source": [ "def hierarchical_retrieval(query: str, retriever: ContextualCompressionRetriever, max_level: int) -> List[Document]:\n", " \"\"\"Perform hierarchical retrieval starting from the highest level, handling potential None values.\"\"\"\n", " all_retrieved_docs = []\n", " \n", " for level in range(max_level, -1, -1):\n", " # Retrieve documents from the current level\n", " level_docs = retriever.get_relevant_documents(\n", " query,\n", " filter=lambda meta: meta['level'] == level\n", " )\n", " all_retrieved_docs.extend(level_docs)\n", " \n", " # If we've found documents, retrieve their children from the next level down\n", " if level_docs and level > 0:\n", " child_ids = [doc.metadata.get('child_ids', []) for doc in level_docs]\n", " child_ids = [item for sublist in child_ids for item in sublist if item is not None] # Flatten and filter None\n", " \n", " if child_ids: # Only modify query if there are valid child IDs\n", " child_query = f\" AND id:({' OR '.join(str(id) for id in child_ids)})\"\n", " query += child_query\n", " \n", " return all_retrieved_docs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### RAPTOR Query Process (Online Process)" ] }, { "cell_type": "code", "execution_count": 101, "metadata": {}, "outputs": [], "source": [ "def raptor_query(query: str, retriever: ContextualCompressionRetriever, max_level: int) -> Dict[str, Any]:\n", " \"\"\"Process a query using the RAPTOR system with hierarchical retrieval.\"\"\"\n", " logging.info(f\"Processing query: {query}\")\n", " \n", " relevant_docs = hierarchical_retrieval(query, retriever, max_level)\n", " \n", " doc_details = []\n", " for i, doc in enumerate(relevant_docs, 1):\n", " doc_details.append({\n", " \"index\": i,\n", " \"content\": doc.page_content,\n", " \"metadata\": doc.metadata,\n", " \"level\": doc.metadata.get('level', 'Unknown'),\n", " \"similarity_score\": doc.metadata.get('score', 'N/A')\n", " })\n", " \n", " context = \"\\n\\n\".join([doc.page_content for doc in relevant_docs])\n", " \n", " prompt = ChatPromptTemplate.from_template(\n", " \"Given the following context, please answer the question:\\n\\n\"\n", " \"Context: {context}\\n\\n\"\n", " \"Question: {question}\\n\\n\"\n", " \"Answer:\"\n", " )\n", " chain = LLMChain(llm=llm, prompt=prompt)\n", " answer = chain.run(context=context, question=query)\n", " \n", " logging.info(\"Query processing completed\")\n", " \n", " result = {\n", " \"query\": query,\n", " \"retrieved_documents\": doc_details,\n", " \"num_docs_retrieved\": len(relevant_docs),\n", " \"context_used\": context,\n", " \"answer\": answer,\n", " \"model_used\": llm.model_name,\n", " }\n", " \n", " return result\n", "\n", "\n", "def print_query_details(result: Dict[str, Any]):\n", " \"\"\"Print detailed information about the query process, including tree level metadata.\"\"\"\n", " print(f\"Query: {result['query']}\")\n", " print(f\"\\nNumber of documents retrieved: {result['num_docs_retrieved']}\")\n", " print(f\"\\nRetrieved Documents:\")\n", " for doc in result['retrieved_documents']:\n", " print(f\" Document {doc['index']}:\")\n", " print(f\" Content: {doc['content'][:100]}...\") # Show first 100 characters\n", " print(f\" Similarity Score: {doc['similarity_score']}\")\n", " print(f\" Tree Level: {doc['metadata'].get('level', 'Unknown')}\")\n", " print(f\" Origin: {doc['metadata'].get('origin', 'Unknown')}\")\n", " if 'child_docs' in doc['metadata']:\n", " print(f\" Number of Child Documents: {len(doc['metadata']['child_docs'])}\")\n", " print()\n", " \n", " print(f\"\\nContext used for answer generation:\")\n", " print(result['context_used'])\n", " \n", " print(f\"\\nGenerated Answer:\")\n", " print(result['answer'])\n", " \n", " print(f\"\\nModel Used: {result['model_used']}\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example Usage and Visualization\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Define data folder" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Process texts" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "loader = PyPDFLoader(path)\n", "documents = loader.load()\n", "texts = [doc.page_content for doc in documents]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create RAPTOR components instances" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Build the RAPTOR tree\n", "tree_results = build_raptor_tree(texts)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Build vectorstore\n", "vectorstore = build_vectorstore(tree_results)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Create retriever\n", "retriever = create_retriever(vectorstore)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Run a query and observe where it got the data from + results" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Run the pipeline\n", "max_level = 3 # Adjust based on your tree depth\n", "query = \"What is the greenhouse effect?\"\n", "result = raptor_query(query, retriever, max_level)\n", "print_query_details(result)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--raptor)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/relevant_segment_extraction.ipynb ================================================ { "cells": [ { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Relevant Segment Extraction (RSE)\n", "\n", "## Overview\n", "\n", "Relevant segment extraction (RSE) is a method of reconstructing multi-chunk segments of contiguous text out of retrieved chunks. This step occurs after vector search (and optionally reranking), but before presenting the retrieved context to the LLM. This method ensures that nearby chunks are presented to the LLM in the order they appear in the original document. It also adds in chunks that are not marked as relevant, but are sandwiched between highly relevant chunks, further improving the context provided to the LLM. This method provides a substantial improvement in RAG performance, as shown in the eval results presented at the end of this notebook.\n", "\n", "## Motivation\n", "\n", "When chunking documents for RAG, choosing the right chunk size is an exercise in managing tradeoffs. Large chunks provide better context to the LLM than small chunks, but they also make it harder to precisely retrieve specific pieces of information. Some queries (like simple factoid questions) are best handled by small chunks, while other queries (like higher-level questions) require very large chunks. There are some queries that can be answered with a single sentence from the document, while there are other queries that require entire sections or chapters to properly answer. Most real-world RAG use cases face a combination of these types of queries. \n", "\n", "What we really need is a more dynamic system that can retrieve short chunks when that's all that's needed, but can also retrieve very large chunks when required. How do we do that?\n", "\n", "Our solution is motivated by one simple insight: **relevant chunks tend to be clustered within their original documents**.\n", "\n", "## Key Components\n", "\n", "#### Chunk text key-value store\n", "RSE requires being able to retrieve chunk text from a database quickly, using a doc_id and chunk_index as keys. This is because not all chunks that need to be included in a given segment will have been returned in the initial search results. Therefore some sort of key-value store may need to be used in addition to the vector database.\n", "\n", "## Method Details\n", "\n", "#### Document chunking\n", "Standard document chunking methods can be used. The only special requirement here is that documents are chunked with no overlap. This allows us to reconstruct sections of the document (i.e. segments) by concatenating chunks.\n", "\n", "#### RSE optimization\n", "After the standard chunk retrieval process is completed, which ideally includes a reranking step, the RSE process can begin. The first step is to combine the absolute relevance value (i.e the similarity score) and the relevance rank. This provides a more robust starting point than just using the similarity score on its own or just using the rank on its own. Then we subtract a constant threshold value (let's say 0.2) from each chunk's value, such that irrelevant chunks have a negative value (as low as -0.2), and relevant chunks have a positive value (as high as 0.8). By calculating chunk values this way we can define segment value as just the sum of the chunk values. \n", "\n", "For example suppose chunks 0-4 in a document have the following chunk values: [-0.2, -0.2, 0.4, 0.8, -0.1]. The segment that includes only chunks 2-3 would have value 0.4+0.8=1.2.\n", "\n", "Finding the best segments then becomes a constrained version of the maximum sum subarray problem. We use a brute force search with a few heuristics to make it efficient. This generally takes ~5-10ms.\n" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "\n", "![Relevant segment extraction](../images/relevant-segment-extraction.svg)\n" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Setup\n", "First, some setup. You'll need a Cohere API key to run some of these cells, as we use their excellent reranker to calculate relevance scores." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install matplotlib numpy python-dotenv" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "import os\n", "import numpy as np\n", "from typing import List\n", "from scipy.stats import beta\n", "import matplotlib.pyplot as plt\n", "import cohere\n", "from dotenv import load_dotenv\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "os.environ[\"CO_API_KEY\"] = os.getenv('CO_API_KEY') # Cohere API key" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "We define a few helper functions. We'll use the Cohere Rerank API to calculate relevance values for our chunks. Normally, we'd start with a vector and/or keyword search to narrow down the list of candidates, but since we're just dealing with a single document here we can just send all chunks directly to the reranker, keeping things a bit simpler." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "from langchain_text_splitters import RecursiveCharacterTextSplitter\n", "\n", "def split_into_chunks(text: str, chunk_size: int):\n", " \"\"\"\n", " Split a given text into chunks of specified size using RecursiveCharacterTextSplitter.\n", "\n", " Args:\n", " text (str): The input text to be split into chunks.\n", " chunk_size (int, optional): The maximum size of each chunk. Defaults to 800.\n", "\n", " Returns:\n", " list[str]: A list of text chunks.\n", "\n", " Example:\n", " >>> text = \"This is a sample text to be split into chunks.\"\n", " >>> chunks = split_into_chunks(text, chunk_size=10)\n", " >>> print(chunks)\n", " ['This is a', 'sample', 'text to', 'be split', 'into', 'chunks.']\n", " \"\"\"\n", " text_splitter = RecursiveCharacterTextSplitter(chunk_size=chunk_size, chunk_overlap=0, length_function=len)\n", " texts = text_splitter.create_documents([text])\n", " chunks = [text.page_content for text in texts]\n", " return chunks\n", "\n", "def transform(x: float):\n", " \"\"\"\n", " Transformation function to map the absolute relevance value to a value that is more uniformly distributed between 0 and 1. The relevance values given by the Cohere reranker tend to be very close to 0 or 1. This beta function used here helps to spread out the values more uniformly.\n", "\n", " Args:\n", " x (float): The absolute relevance value returned by the Cohere reranker\n", "\n", " Returns:\n", " float: The transformed relevance value\n", " \"\"\"\n", " a, b = 0.4, 0.4 # These can be adjusted to change the distribution shape\n", " return beta.cdf(x, a, b)\n", "\n", "def rerank_chunks(query: str, chunks: List[str]):\n", " \"\"\"\n", " Use Cohere Rerank API to rerank the search results\n", "\n", " Args:\n", " query (str): The search query\n", " chunks (list): List of chunks to be reranked\n", "\n", " Returns:\n", " similarity_scores (list): List of similarity scores for each chunk\n", " chunk_values (list): List of relevance values (fusion of rank and similarity) for each chunk\n", " \"\"\"\n", " model = \"rerank-english-v3.0\"\n", " client = cohere.Client(api_key=os.environ[\"CO_API_KEY\"])\n", " decay_rate = 30\n", "\n", " reranked_results = client.rerank(model=model, query=query, documents=chunks)\n", " results = reranked_results.results\n", " reranked_indices = [result.index for result in results]\n", " reranked_similarity_scores = [result.relevance_score for result in results] # in order of reranked_indices\n", " \n", " # convert back to order of original documents and calculate the chunk values\n", " similarity_scores = [0] * len(chunks)\n", " chunk_values = [0] * len(chunks)\n", " for i, index in enumerate(reranked_indices):\n", " absolute_relevance_value = transform(reranked_similarity_scores[i])\n", " similarity_scores[index] = absolute_relevance_value\n", " chunk_values[index] = np.exp(-i/decay_rate)*absolute_relevance_value # decay the relevance value based on the rank\n", "\n", " return similarity_scores, chunk_values\n", "\n", "def plot_relevance_scores(chunk_values: List[float], start_index: int = None, end_index: int = None) -> None:\n", " \"\"\"\n", " Visualize the relevance scores of each chunk in the document to the search query\n", "\n", " Args:\n", " chunk_values (list): List of relevance values for each chunk\n", " start_index (int): Start index of the chunks to be plotted\n", " end_index (int): End index of the chunks to be plotted\n", "\n", " Returns:\n", " None\n", "\n", " Plots:\n", " Scatter plot of the relevance scores of each chunk in the document to the search query\n", " \"\"\"\n", " plt.figure(figsize=(12, 5))\n", " plt.title(f\"Similarity of each chunk in the document to the search query\")\n", " plt.ylim(0, 1)\n", " plt.xlabel(\"Chunk index\")\n", " plt.ylabel(\"Query-chunk similarity\")\n", " if start_index is None:\n", " start_index = 0\n", " if end_index is None:\n", " end_index = len(chunk_values)\n", " plt.scatter(range(start_index, end_index), chunk_values[start_index:end_index])" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/nike_2023_annual_report.txt https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/nike_2023_annual_report.txt\n" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Split the document into 500 chunks\n" ] } ], "source": [ "# File path for the input document\n", "FILE_PATH = \"data/nike_2023_annual_report.txt\"\n", "\n", "with open(FILE_PATH, 'r') as file:\n", " text = file.read()\n", "\n", "chunks = split_into_chunks(text, chunk_size=800)\n", "\n", "print (f\"Split the document into {len(chunks)} chunks\")" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Visualize chunk relevance distribution across single document" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "# Example query that requires a longer result than a single chunk\n", "query = \"Nike consolidated financial statements\"\n", "\n", "similarity_scores, chunk_values = rerank_chunks(query, chunks)" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+kAAAHUCAYAAABGRmklAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB1J0lEQVR4nO3deXhU1f3H8c9kJyEZCEsSFiEgCpGtgGhAKossLnGprYoiUNQWXFlsK1oNQVsU9w20VbCKIj+roliMREAUhQZZVAx1wSiICZFEkgiEJTm/P9KZZjKTZCaZycxk3q/n4XnInTN3vjO5uXO/93zPORZjjBEAAAAAAPC7MH8HAAAAAAAAqpGkAwAAAAAQIEjSAQAAAAAIECTpAAAAAAAECJJ0AAAAAAACBEk6AAAAAAABgiQdAAAAAIAAQZIOAAAAAECAIEkHAAAAACBAkKQDaLR///vfuuSSS3TSSScpOjpaSUlJSk9P15w5cxzajRw5UiNHjvTqa7vap8Vi0bx587z6Ot9++60sFouee+45+7aPPvpI8+bN08GDB736Wp54/PHHdfLJJysqKkoWi8WvsbjSvXt3XXDBBT59DYvFohtvvNGnr1GXefPmyWKx6MCBAx4/97nnnpPFYtG3337rtXj++te/auXKlXW+1scff+y11/KEL95rS3H48GHNmzdP7733nlvtf/jhB82bN087duzwahz17Xfq1Klq3bq1V1+vpRg5cqT69u3r7zAAtFAk6QAa5V//+peGDRumsrIyLVy4UGvWrNGjjz6q4cOHa8WKFQ5tFy1apEWLFnn19X2xT1dSUlK0adMmnX/++fZtH330kbKysvyWGO/YsUM333yzRo0apXXr1mnTpk2Kj4/3Syzw3Pnnn69NmzYpJSXFa/usK0lH4Dp8+LCysrI8StKzsrJ8kqT7Yr8AgMaL8HcAAILTwoULlZqaqnfeeUcREf87lVxxxRVauHChQ9u0tDSvv74v9llTZWWlTpw4oejoaJ155pk+fS1Pff7555Kk6667TkOHDvVzNPBUhw4d1KFDB3+HAaCWI0eOKCYmRhaLxd+hNLvDhw8rNjbW32EA+C960gE0SnFxsdq3b++QoNuEhTmeWmqXpttKyO+//37dd9996t69u1q1aqWRI0fqyy+/1PHjx3XbbbepU6dOslqtuuSSS1RUVFTvPl358ccfdf311ystLU2tW7dWx44dNXr0aH3wwQcO7WzxLFy4UPfcc49SU1MVHR2t9evXO5W7z5s3T3/4wx8kSampqbJYLLJYLHrvvfd0zTXXKDExUYcPH3aKZfTo0TrttNPqjVeSlixZogEDBigmJkaJiYm65JJLtGvXLof3PWnSJEnSGWecIYvFoqlTp9a7z6+++kpXXnmlOnbsqOjoaPXp00dPPvmkQ5uKigrNmTNHAwcOlNVqVWJiotLT0/XGG2847a+qqkqPP/64Bg4cqFatWqlNmzY688wz9eabbzq1zc7O1qBBg9SqVSv17t1bS5YsafAzkKSjR49q/vz56tOnj2JiYtSuXTuNGjVKH330kVPbF154QX369FFsbKwGDBigt956y+HxqVOnqnv37k7Ps5Ws12QroW9on6785z//UY8ePXTGGWc4Ha81uSoBt5XObtmyRSNGjFBsbKx69Oihe++9V1VVVfW+rsVi0aFDh/SPf/zDfjzW/tsoLy/XjBkz1L59e7Vr106/+tWv9MMPPzjta8WKFUpPT1dcXJxat26t8ePHa/v27Q2+d0navHmzhg8frpiYGHXq1Elz587V8ePHndpVVVVp4cKF6t27t6Kjo9WxY0dNnjxZ33//vVPb7OxsjRkzRlarVbGxserTp48WLFjg8Lm5Og/U/p1745zj7udjKxH/+uuvdd5556l169bq2rWr5syZo6NHj9rjsd2oycrKsv/e6vpbfu+993T66adLkn7729/a29cc3vPmm28qPT1dsbGxio+P19ixY7Vp0yaX+/Nkv5LqfS82x44d0z333GP/vXbo0EG//e1v9eOPP9YbgyR98803uuKKK9SpUyf70KkxY8Y49e678/l//PHHuuKKK+y/4+7du2vixIn67rvvHNrZ/g7XrFmjadOmqUOHDoqNjbW/r5deeknp6elq3bq1WrdurYEDB+rZZ591ir0xf7OSVFZWpuuuu07t2rVT69atNWHCBH355ZdOn78n5y9jjBYtWmQ/N7dt21a//vWv9c033zi0s51v3n//fQ0bNkyxsbGaNm2aV77DAHiJAYBGuPbaa40kc9NNN5nNmzebY8eO1dn27LPPNmeffbb95/z8fCPJdOvWzWRkZJi33nrLLFu2zCQlJZlTTjnFXH311WbatGnm7bffNk899ZRp3bq1ycjIqHefxhgjyWRmZtp//s9//mNmzJhhXn75ZfPee++Zt956y1xzzTUmLCzMrF+/3imezp07m1GjRpl//vOfZs2aNSY/P9/+2NKlS40xxuzdu9fcdNNNRpJ57bXXzKZNm8ymTZtMaWmp+eSTT4wk8/e//90hrs8//9xIMk8++WS9n+lf//pXI8lMnDjR/Otf/zLPP/+86dGjh7FarebLL7+07+vPf/6zPaZNmzaZr7/+us59fv7558ZqtZp+/fqZ559/3qxZs8bMmTPHhIWFmXnz5tnbHTx40EydOtW88MILZt26dSY7O9vceuutJiwszPzjH/9w2OfVV19tLBaLufbaa80bb7xh3n77bfOXv/zFPProo/Y23bp1M126dDFpaWnm+eefN++88475zW9+YySZDRs21Ps5HD9+3IwaNcpERESYW2+91axevdq8+eab5vbbbzfLly+3t5NkunfvboYOHWr+7//+z6xevdqMHDnSREREmN27d9vbTZkyxXTr1s3pdTIzM03tr0F392l77o8//miMMea9994zbdu2NRdddJE5dOhQve9v6dKlRpLJz8+3bzv77LNNu3btTK9evcxTTz1lcnJyzPXXX28kOX3+tW3atMm0atXKnHfeefbj8fPPP3d4rR49epibbrrJvPPOO+aZZ54xbdu2NaNGjXLYz1/+8hdjsVjMtGnTzFtvvWVee+01k56ebuLi4uz7q8vnn39uYmNjTVpamlm+fLl54403zPjx481JJ53k9F5/97vfGUnmxhtvNNnZ2eapp54yHTp0MF27drV/nsYY88wzzxiLxWJGjhxpXnrpJfPuu++aRYsWmeuvv97hc6t9HjDG+XfujXOOu5/PlClTTFRUlOnTp4954IEHzLvvvmvuuusuY7FYTFZWljHGmIqKCpOdnW0kmWuuucb+e6vrb7m0tNT+u/zzn/9sb793715jjDEvvviikWTGjRtnVq5caVasWGEGDx5soqKizAcffFDn762h/brzXowxprKy0kyYMMHExcWZrKwsk5OTY5555hnTuXNnk5aWZg4fPlxnDMYYc+qpp5qTTz7ZvPDCC2bDhg3m1VdfNXPmzHE4T7v7+b/yyivmrrvuMq+//rrZsGGDefnll83ZZ59tOnTo4HB82d53586dze9+9zvz9ttvm3/+85/mxIkT5s477zSSzK9+9SvzyiuvmDVr1piHHnrI3HnnnfbnN+VvtqqqyowaNcpER0ebv/zlL2bNmjUmMzPT9OjRw+l7zJPz13XXXWciIyPNnDlzTHZ2tnnppZdM7969TVJSkiksLHSIPTEx0XTt2tU8/vjjZv369WbDhg1N/g4D4D0k6QAa5cCBA+ass84ykowkExkZaYYNG2YWLFhgysvLHdrWlaQPGDDAVFZW2rc/8sgjRpK58MILHZ4/c+ZMI8mUlpbWuU9jnJP02k6cOGGOHz9uxowZYy655BKneHr27Ol0s6F2km6MMffff79T4lEzroEDBzpsmzFjhklISHD6XGr66aef7IlWTXv27DHR0dHmyiuvtG+zXVxu2bKlzv3ZjB8/3nTp0sXhszPGmBtvvNHExMSYkpISl8+zfVbXXHON+cUvfmHf/v777xtJ5o477qj3dbt162ZiYmLMd999Z9925MgRk5iYaH7/+9/X+9znn3/e5YVibZJMUlKSKSsrs28rLCw0YWFhZsGCBfZtnibp7uyzZpL+wgsvmKioKHPzzTc7HM91qStJl2T+/e9/O7RNS0sz48ePb3CfcXFxZsqUKXW+Vs3E1hhjFi5caCSZgoICY0z1cRYREWFuuukmh3bl5eUmOTnZXHbZZfW+/uWXX25atWrlkAicOHHC9O7d2+G97tq1y2U8//73v40kc/vtt9tfNyEhwZx11lmmqqqqztf1NElv7DnHk89nypQpRpL5v//7P4e25513njn11FPtP//4448NnrNq2rJli9O5yJjqBLlTp06mX79+Du+tvLzcdOzY0QwbNqxR+/XkvSxfvtxIMq+++qrLfS9atKjO1z9w4ICRZB555JE62zTl+Dxx4oT5+eefTVxcnMONRNvfxuTJkx3af/PNNyY8PNxcddVVde7TmKb9zb799ttGkkM8xlTfiGhskr5p0yYjyTz44IMO7fbu3WtatWpl/vjHPzrFvnbtWpfvqzHfYQC8i3J3AI3Srl07ffDBB9qyZYvuvfdeXXTRRfryyy81d+5c9evXz61Zr8877zyH0vg+ffpIksMkbTW379mzx+M4n3rqKQ0aNEgxMTGKiIhQZGSk1q5d61BCbnPhhRcqMjLS49eo6ZZbbtGOHTv04YcfSqouaXzhhRc0ZcqUemdJ3rRpk44cOeJU7tq1a1eNHj1aa9eu9TiWiooKrV27VpdccoliY2N14sQJ+7/zzjtPFRUV2rx5s739K6+8ouHDh6t169b2z+rZZ591+KzefvttSdINN9zQ4OsPHDhQJ510kv3nmJgYnXLKKU5lp7W9/fbbiomJ0bRp0xp8jVGjRjlMmpeUlKSOHTs2+Bre2udf/vIXTZ06Vffee68effRRp6EenkhOTnaaY6B///5Nei82F154odN+Jdn3/c477+jEiROaPHmyw3ESExOjs88+u8HJzdavX68xY8YoKSnJvi08PFyXX365UztJTsf50KFD1adPH/tx/tFHH6msrEzXX3+9V8cHN/ac4+nnY7FYlJGR4bDNW7/L2r744gv98MMPuvrqqx3eW+vWrXXppZdq8+bNLsuX3eXOe3nrrbfUpk0bZWRkOHw+AwcOVHJycr3HT2Jionr27Kn7779fDz30kLZv3+5ULu7J5//zzz/rT3/6k04++WRFREQoIiJCrVu31qFDh1ye9y+99FKHn3NyclRZWenWOa6xf7O2v4OrrrrKYfuVV17Z4GvW5a233pLFYtGkSZMcPqPk5GQNGDDA6XfQtm1bjR492mk/jf0OA+BdJOkAmmTIkCH605/+pFdeeUU//PCDZs2apW+//dZp8jhXEhMTHX6Oioqqd3tFRYVHsT300EOaMWOGzjjjDL366qvavHmztmzZogkTJujIkSNO7b0x2/ZFF12k7t2728d8P/fcczp06FCDF3zFxcV1xtCpUyf7454oLi7WiRMn9PjjjysyMtLh33nnnSdJ9pspr732mi677DJ17txZy5Yt06ZNm7RlyxZNmzbN4XP/8ccfFR4eruTk5AZfv127dk7boqOjXX72Nf3444/q1KmTWwlvY1/DW/tctmyZOnfurCuuuKLRr9eY123qvqOjoyXJvu/9+/dLkk4//XSnY2XFihUN3nQrLi52eUzU3ubucW4bx9ylS5cG35snGnvO8fTziY2NVUxMjMO26Ohoj89h7mjoM62qqtJPP/3U6P27817279+vgwcPKioqyunzKSwsrPf4sVgsWrt2rcaPH6+FCxdq0KBB6tChg26++WaVl5fb9y+59/lfeeWVeuKJJ3TttdfqnXfeUW5urrZs2aIOHTq4dd735Nhr7N9scXGxIiIinJ7vznm1Lvv375cxRklJSU6f0ebNm51+B3V93zX2OwyAdzG7OwCviYyMVGZmph5++GHt3LnT3+Fo2bJlGjlypBYvXuyw3XbhV5s3euzCwsJ0ww036Pbbb9eDDz6oRYsWacyYMTr11FPrfZ7tYq2goMDpsR9++EHt27f3OJa2bdsqPDxcV199dZ0XWKmpqZKqP6vU1FStWLHC4XOoPTlUhw4dVFlZqcLCQq8uIVb7NTZu3Kiqqqom9UzbxMTEOL0PSY1a47y27OxsXX755RoxYoTWrl2rbt26NXmf/mA7vv75z3826j20a9dOhYWFTttrb6t5nNdOgmoe57ZJ1VxNJldTTEyMSktLnbZ743dbU1M/H19q6NwRFhamtm3b+jQG24SE2dnZLh9vaInIbt262Sdl+/LLL/V///d/mjdvno4dO6annnrK7c+/tLRUb731ljIzM3XbbbfZtx89elQlJSUun1P7vF/z2OvatWu9cTdWu3btdOLECRUXFzsk6q7+htw9f7Vv314Wi0UffPCB/SZcTbW31fV919jvMADeRU86gEZxdUEoyV5O2KlTp+YMxyWLxeJ0YfLpp582OONxQ2r3QtZ27bXXKioqSldddZW++OIL3XjjjQ3uMz09Xa1atdKyZcsctn///fdat26dxowZ43GcsbGxGjVqlLZv367+/ftryJAhTv9sF4gWi0VRUVEOF26FhYVOs7ufe+65kuR048Obzj33XFVUVNhn1G+q7t27q6ioyN4bJ1XPRP3OO+80ed/dunWzXxSPGDFCX331VZP32RhN7XEfP368IiIitHv3bpfHyZAhQ+p9/qhRo7R27VqHz7iyslIrVqxwaGcrr619nG/ZskW7du2yH+fDhg2T1WrVU089JWNMna/bvXt3ffnllw5JTHFxsctVAJqiqZ+PKw2dR9xtf+qpp6pz58566aWXHD6rQ4cO6dVXX7XP+O6tOFy54IILVFxcrMrKSpefjScJ3imnnKI///nP6tevn7Zt2ybJ/c/fYrHIGON03n/mmWdUWVnp1uuPGzdO4eHhPj3HjRo1SpL04osvOmx/6aWXnNq6e/664IILZIzRvn37XH4+/fr1czu+xnyHAfAuetIBNMr48ePVpUsXZWRkqHfv3qqqqtKOHTv04IMPqnXr1rrlllv8HaIuuOAC3X333crMzNTZZ5+tL774QvPnz1dqaqpOnDjR6P3aLnYeffRRTZkyRZGRkTr11FPtvUVt2rTR5MmTtXjxYnXr1s1pPKcrbdq00Z133qnbb79dkydP1sSJE1VcXKysrCzFxMQoMzOzUbE++uijOuusszRixAjNmDFD3bt3V3l5ub7++mutWrVK69atk1T9Wb322mu6/vrr9etf/1p79+7V3XffrZSUFIfEc8SIEbr66qt1zz33aP/+/brgggsUHR2t7du3KzY2VjfddFOj4qxp4sSJWrp0qaZPn64vvvhCo0aNUlVVlf7973+rT58+HpeWX3755brrrrt0xRVX6A9/+IMqKir02GOPuX3R3pCUlBRt2LBB48eP1y9/+Uvl5OSob9++Xtm3u/r166f33ntPq1atUkpKiuLj4z1KjLp376758+frjjvu0DfffKMJEyaobdu22r9/v3JzcxUXF6esrKw6n//nP/9Zb775pkaPHq277rpLsbGxevLJJ3Xo0CGHdqeeeqp+97vf6fHHH1dYWJjOPfdcffvtt7rzzjvVtWtXzZo1S1L1eOoHH3xQ1157rc455xxdd911SkpK0tdff61PPvlETzzxhCTp6quv1tNPP61JkybpuuuuU3FxsRYuXKiEhIRGfIq++3xciY+PV7du3fTGG29ozJgxSkxMVPv27V0utyVJPXv2VKtWrfTiiy+qT58+at26tTp16qROnTpp4cKFuuqqq3TBBRfo97//vY4ePar7779fBw8e1L333ltvHPXt111XXHGFXnzxRZ133nm65ZZbNHToUEVGRur777/X+vXrddFFF+mSSy5x+dxPP/1UN954o37zm9+oV69eioqK0rp16/Tpp5/ae8Pd/fwTEhL0y1/+Uvfff7/9s9ywYYOeffZZtWnTxq330r17d91+++26++67deTIEU2cOFFWq1V5eXk6cOCAx79nV8aNG6df/vKX+uMf/6hDhw5pyJAh+vDDD/XCCy84tXX3/DV8+HD97ne/029/+1t9/PHH+uUvf6m4uDgVFBRo48aN6tevn2bMmOFWfI35DgPgZX6dtg5A0FqxYoW58sorTa9evUzr1q1NZGSkOemkk8zVV19t8vLyHNrWNbv7/fff79Bu/fr1RpJ55ZVXHLa7ms3cndndjx49am699VbTuXNnExMTYwYNGmRWrlxZ58zPteOp+VjtmY/nzp1rOnXqZMLCwowkh6WCjKlekkuSuffee532WZ9nnnnG9O/f30RFRRmr1Wouuugip+WvPJnd3fYepk2bZjp37mwiIyNNhw4dzLBhw8w999zj0O7ee+813bt3N9HR0aZPnz7m73//u8sZ0CsrK83DDz9s+vbta48zPT3drFq1yt6mW7du5vzzz3eKpa7ZuGs7cuSIueuuu0yvXr1MVFSUadeunRk9erT56KOP7G0kmRtuuMHpud26dXOa6Xz16tVm4MCBplWrVqZHjx7miSeeqHN2d3f2WXsJNmOql7EbPny4SUxMrPd3U9fs7qeddppT27pmdq5tx44dZvjw4SY2NtZIsn/GdR0rtr+12sftypUrzahRo0xCQoKJjo423bp1M7/+9a/Nu+++22AMH374oTnzzDNNdHS0SU5ONn/4wx/M3/72N6f3WllZae677z5zyimnmMjISNO+fXszadIk+7JfNa1evdqcffbZJi4uzr7E23333efQ5h//+Ifp06ePiYmJMWlpaWbFihVu/417cs5x9/OZMmWKiYuLc3ovro63d9991/ziF78w0dHRRpLLGfprWr58uendu7eJjIx0Ot+tXLnSnHHGGSYmJsbExcWZMWPGmA8//LDe/TW0X0/ey/Hjx80DDzxgBgwYYGJiYkzr1q1N7969ze9//3vz1Vdf1fna+/fvN1OnTjW9e/c2cXFxpnXr1qZ///7m4YcfNidOnHBo687n//3335tLL73UtG3b1sTHx5sJEyaYnTt3Ov0NN3Qeff75583pp59ufy+/+MUvHL4Hmvo3e/DgQTNt2jTTpk0bExsba8aOHWv+85//uJzx393zlzHGLFmyxJxxxhkmLi7OtGrVyvTs2dNMnjzZfPzxxw3GXlNjv8MAeIfFmHrqyAAAjTJnzhwtXrxYe/fudTm5EAAAtVksFmVmZmrevHl+jYPvMMC/KHcHAC/avHmzvvzySy1atEi///3vubgBAAQNvsOAwECSDgBeZJuk6YILLtA999zj73AAAHAb32FAYKDcHQAAAACAAOHXJdjef/99ZWRkqFOnTrJYLFq5cmWDz9mwYYMGDx6smJgY9ejRQ0899ZTvAwUAAAAAoBn4NUk/dOiQBgwYYF9KpSH5+fk677zzNGLECG3fvl233367br75Zr366qs+jhQAAAAAAN8LmHJ3i8Wi119/XRdffHGdbf70pz/pzTff1K5du+zbpk+frk8++USbNm1qhigBAAAAAPCdoJo4btOmTRo3bpzDtvHjx+vZZ5/V8ePHFRkZ6fSco0eP6ujRo/afq6qq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dwAA3MR6uAAQutyd/O3cvilK79muUQm6bdb4N3bs06bdxXyfhCi/J+mLFi1SamqqYmJiNHjwYH3wwQd1tn3ttdc0duxYdejQQQkJCUpPT9c777zTjNECAEIZ6+ECQOgampqoFGuM0xrtNhZVD31q7CRx2TsLdNZ96zTx75t1y8s7NPHvm3XWfeuU7eYyb2g5/Jqkr1ixQjNnztQdd9yh7du3a8SIETr33HO1Z88el+3ff/99jR07VqtXr9bWrVs1atQoZWRkaPv27c0cOQAgFLlb6sh6uADQ8oSHWZSZkSZJTol6UyeJsw2lqn0j2DaUikQ9tFiMMX6roTjjjDM0aNAgLV682L6tT58+uvjii7VgwQK39nHaaafp8ssv11133eVW+7KyMlmtVpWWliohIaFRcQMAQtOm3cWa+PfNDbZbft2ZflkaCADge96ePLSyyuis+9bVWallW8Zt459GM8Y9iHmSh/pt4rhjx45p69atuu222xy2jxs3Th999JFb+6iqqlJ5ebkSE+suKTl69KiOHj1q/7msrKxxAQMAQp6t1LGwtMLluHTWwwWAlm9C3xSNTUv22jKcngyl4gZwaPBbufuBAwdUWVmppKQkh+1JSUkqLCx0ax8PPvigDh06pMsuu6zONgsWLJDVarX/69q1a5PiBgCELl+WOiLwMIETgLqEh1mU3rOdLhrYudGTxNkwlAq1+X0JNovF8YA2xjhtc2X58uWaN2+e3njjDXXs2LHOdnPnztXs2bPtP5eVlZGoAwAabULfFC2eNMip1JH1cFsWb5ezAkBd3J013t12CH5+S9Lbt2+v8PBwp17zoqIip9712lasWKFrrrlGr7zyis4555x620ZHRys6OrrJ8QIAYOPtUkcEFtsETrX7zW0TOC2eNIhEHYDXMJQKtfmt3D0qKkqDBw9WTk6Ow/acnBwNGzaszuctX75cU6dO1UsvvaTzzz/f12ECAOBSY0sdKaEObJVVRlmr8lxeKNu2Za3K4/cGwGsYSoXa/FruPnv2bF199dUaMmSI0tPT9be//U179uzR9OnTJVWXqu/bt0/PP/+8pOoEffLkyXr00Ud15pln2nvhW7VqJavV6rf3AQCAOyihDnxM4ATAHxhKhZr8mqRffvnlKi4u1vz581VQUKC+fftq9erV6tatmySpoKDAYc30p59+WidOnNANN9yg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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_relevance_scores(chunk_values)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### How to interpret the chunk relevance plot above\n", "In the plot above, the x-axis represents the chunk index. The first chunk in the document has index 0, the next chunk has index 1, etc. The y-axis represents the relevance of each chunk to the query. Viewing it this way lets us see how relevant chunks tend to be clustered in one or more sections of a document. \n", "\n", "Note: the relevance values in this plot are actually a combination of the raw relevance value and the relevance ranks. An exponential decay function is applied to the ranks, and that is then multiplied by the raw relevance value. Using this combination provides a more robust measure of relevance than using just one or the other.\n", "\n", "### Zooming in\n", "Now let's zoom in on that cluster of relevant chunks for a closer look." ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "image/png": "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+cYsX77cDBs2zPj4+Jj169c71FOjRg3TuXNn8+mnn5o1a9aYpKQk22vz5s0zxhhz9OhRM3LkSCPJfP7552br1q1m69atJi0tzfz4449Gknn//fft6tq7d6+RZN55552rrtOXXnrJSDL333+/+eqrr8z8+fNN3bp1jdVqNT///LNtXv/6179sNW3dutUcPHiwwHnu3bvXWK1W07RpUzN//nyzZs0aM3bsWOPj42MmTpxo63f69GkzZMgQ8+GHH5p169aZVatWmaefftr4+PiY//znP3bzHDhwoLFYLObhhx82X375pVm5cqV58cUXzZtvvmnrExUVZWrWrGkaNWpk5s+fb1avXm3uu+8+I8ls2LDhquvh4sWLpnPnzsbPz888/fTTZsWKFWbp0qVmwoQJZtGiRbZ+kkydOnVMmzZtzH//+1+zYsUK06lTJ+Pn52d++eUXW7/BgwebqKgoh+XExcWZKzeDhZ1n3rR//PGHMcaYb775xlSqVMncdddd5uzZs1d9f/PmzTOSTFJSkq2tY8eOpnLlyqZ+/fpm1qxZJiEhwTz22GNGksP6v9LWrVtNuXLlTK9evWyfx71799otq27dumbkyJFm9erVZvbs2aZSpUqmc+fOdvN58cUXjcViMUOHDjXLly83n3/+uYmNjTUhISG2+RVk7969Jjg42DRq1MgsWrTIfPnll6ZHjx6mdu3aDu/173//u5FknnjiCbNq1Soza9YsU7VqVVOrVi3b+jTGmNmzZxuLxWI6depkPvroI/P111+bGTNmmMcee8xuvV35O2CM45i74jensOtn8ODBJiAgwMTExJjXXnvNfP311+b55583FovFxMfHG2OMyczMNKtWrTKSzLBhw2zjVtB3OS0tzTaW//rXv2z9jx49aowxZuHChUaS6d69u1myZIlZvHixadWqlQkICDAbN24scNyuNd/CvBdjjMnJyTE9e/Y0ISEhJj4+3iQkJJjZs2ebGjVqmEaNGplz584VWIMxxjRo0MDccMMN5sMPPzQbNmwwn332mRk7dqzd73Rh1/8nn3xinn/+efPFF1+YDRs2mI8//th07NjRVK1a1e7zlfe+a9SoYf7+97+blStXmk8//dRkZ2eb5557zkgy99xzj/nkk0/MmjVrzNSpU81zzz1nm74439nc3FzTuXNnExgYaF588UWzZs0aExcXZ+rWreuwHXPm9+uRRx4x/v7+ZuzYsWbVqlXmo48+Mg0bNjTh4eEmJSXFrvawsDBTq1YtM336dLN+/XqzYcOGYm/DALgOIR1AkZw8edLccsstRpKRZPz9/U27du3M5MmTTUZGhl3fgkJ68+bNTU5Ojq192rRpRpLp06eP3fRPPfWUkWTS0tIKnKcxjiH9StnZ2ebixYuma9eupm/fvg711KtXz+E/G64M6cYY8+qrrzoEj8vratGihV3biBEjTGhoqMN6udyff/5pC1qXO3LkiAkMDDQPPPCArS3vj8vt27cXOL88PXr0MDVr1rRbd8YY88QTT5igoCCTmpqa73R562rYsGHmpptusrV/++23RpJ59tlnr7rcqKgoExQUZH799Vdb2/nz501YWJh59NFHrzrt/Pnz8/1D8UqSTHh4uElPT7e1paSkGB8fHzN58mRbm7MhvTDzvDykf/jhhyYgIMCMGjXK7vNckIJCuiTz3Xff2fVt1KiR6dGjxzXnGRISYgYPHlzgsi4PtsYYM2XKFCPJJCcnG2Mufc78/PzMyJEj7fplZGSY6tWrm379+l11+f379zflypWzCwLZ2dmmYcOGdu91//79+dbz3XffGUlmwoQJtuWGhoaaW265xeTm5ha4XGdDelF/c5xZP4MHDzaSzH//+1+7vr169TINGjSwPf/jjz+u+Zt1ue3btzv8FhlzKSBHRkaapk2b2r23jIwMU61aNdOuXbsizdeZ97Jo0SIjyXz22Wf5znvGjBkFLv/kyZNGkpk2bVqBfYrz+czOzjZnzpwxISEhdv+RmPfdGDRokF3/Q4cOGV9fX/Pggw8WOE9jivedXblypZFkV48xl/4joqghfevWrUaSef311+36HT161JQrV87885//dKh97dq1+b6vomzDALgWh7sDKJLKlStr48aN2r59u15++WXddddd+vnnnzV+/Hg1bdq0UFe97tWrl92h8TExMZJkd5G2y9uPHDnidJ2zZs1Sy5YtFRQUJD8/P/n7+2vt2rV2h5Dn6dOnj/z9/Z1exuWefPJJ7dq1S5s3b5Z06ZDGDz/8UIMHD77qVZK3bt2q8+fPOxzuWqtWLXXp0kVr1651upbMzEytXbtWffv2VXBwsLKzs22PXr16KTMzU9u2bbP1/+STT9S+fXuVL1/etq7mzJljt65WrlwpSXr88cevufwWLVqo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4MGDWrZsmdatWyfp0rr6/PPP9dhjj+mvf/2rjh49qn//+9+KiIiwC54dOnTQwIED9cILL+j48eO68847FRgYqB9++EHBwcEaOXJkkeq83P3336958+Zp+PDh+umnn9S5c2fl5ubqu+++U0xMjNOHlvfv31/PP/+8BgwYoH/84x/KzMzUW2+9Veg/2q8lIiJCGzZsUI8ePXTrrbcqISFBTZo0ccm8C6tp06b65ptvtGzZMkVERKhChQpOBaM6depo0qRJevbZZ3Xo0CH17NlTlSpV0vHjx5WYmKiQkBDFx8cXOP2//vUvLV26VF26dNHzzz+v4OBgvfPOOzp79qxdvwYNGujvf/+7pk+fLh8fH91+++06fPiwnnvuOdWqVUujR4+WdOl86tdff10PP/ywbrvtNj3yyCMKDw/XwYMH9eOPP+rtt9+WJA0cOFDvvvuuHnroIT3yyCM6deqUpkyZotDQ0CKsRfetn/xUqFBBUVFR+vLLL9W1a1eFhYWpSpUq+d5uS5Lq1auncuXKaeHChYqJiVH58uUVGRmpyMhITZkyRQ8++KDuvPNOPfroo8rKytKrr76q06dP6+WXX75qHVebb2ENGDBACxcuVK9evfTkk0+qTZs28vf312+//ab169frrrvuUt++ffOddvfu3XriiSd03333qX79+goICNC6deu0e/du297wwq7/0NBQ3XrrrXr11Vdt63LDhg2aM2eOKlasWKj3UqdOHU2YMEH//ve/df78ed1///2yWq3at2+fTp486fQ456d79+669dZb9c9//lNnz55V69attXnzZn344YcOfQv7+9W+fXv9/e9/19/+9jd9//33uvXWWxUSEqLk5GRt2rRJTZs21YgRIwpVX1G2YQBczKOXrQNQai1evNg88MADpn79+qZ8+fLG39/f1K5d2wwcONDs27fPrm9BV3d/9dVX7fqtX7/eSDKffPKJXXt+VzMvzNXds7KyzNNPP21q1KhhgoKCTMuWLc2SJUsKvPLzlfVc/tqVVz4eP368iYyMND4+PkaS3a2CjLl0Sy5J5uWXX3aY59XMnj3bNGvWzAQEBBir1Wruuusuh9tfOXN197z3MHToUFOjRg3j7+9vqlatatq1a2deeOEFu34vv/yyqVOnjgkMDDQxMTHm/fffz/cK6Dk5OeaNN94wTZo0sdUZGxtrli1bZusTFRVl7rjjDodaCroa95XOnz9vnn/+eVO/fn0TEBBgKleubLp06WK2bNli6yPJPP744w7TRkVFOVzpfMWKFaZFixamXLlypm7duubtt98u8OruhZnnlbdgM+bSbezat29vwsLCrjo2BV3dvXHjxg59C7qy85V27dpl2rdvb4KDg40k2zou6LOS91278nO7ZMkS07lzZxMaGmoCAwNNVFSU+etf/2q+/vrra9awefNmc/PNN5vAwEBTvXp1849//MO89957Du81JyfHvPLKK+bGG280/v7+pkqVKuahhx6y3fbrcitWrDAdO3Y0ISEhtlu8vfLKK3Z9/vOf/5iYmBgTFBRkGjVqZBYvXlzo77gzvzmFXT+DBw82ISEhDu8lv8/b119/bW666SYTGBhoJOV7hf7LLVq0yDRs2ND4+/s7/N4tWbLEtG3b1gQFBZmQkBDTtWtXs3nz5qvO71rzdea9XLx40bz22mumefPmJigoyJQvX940bNjQPProo+bAgQMFLvv48eNmyJAhpmHDhiYkJMSUL1/eNGvWzLzxxhsmOzvbrm9h1v9vv/1m7r33XlOpUiVToUIF07NnT7Nnzx6H7/C1fkfnz59v/vKXv9jey0033WS3HSjud/b06dNm6NChpmLFiiY4ONh069bN/O9//8v3iv+F/f0yxpi5c+eatm3bmpCQEFOuXDlTr149M2jQIPP9999fs/bLFXUbBsA1LMZc5TgyAECRjB07VjNnztTRo0fzvbgQAABXslgsiouL08SJEz1aB9swwLM43B0AXGjbtm36+eefNWPGDD366KP8cQMAKDXYhgHegZAOAC6Ud5GmO++8Uy+88IKnywEAoNDYhgHegcPdAQAAAADwEh69Bdu3336r3r17KzIyUhaLRUuWLLnmNBs2bFCrVq0UFBSkunXratasWe4vFAAAAACAEuDRkH727Fk1b97cdiuVa0lKSlKvXr3UoUMH/fDDD5owYYJGjRqlzz77zM2VAgAAAADgfl5zuLvFYtEXX3yhu+++u8A+zzzzjJYuXar9+/fb2oYPH64ff/xRW7duLYEqAQAAAABwn1J14bitW7eqe/fudm09evTQnDlzdPHiRfn7+ztMk5WVpaysLNvz3NxcpaamqnLlyrJYLG6vGQAAAABQthljlJGRocjISPn4XP2A9lIV0lNSUhQeHm7XFh4eruzs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FDugS1L//v116tQpTZo0ScnJyWrSpIlWrFhhO+89OTlZR44csfUvX768EhISNHLkSLVu3VqVK1dWv3799MILLxS7FgAAAAAAPM3pPen//Oc/FRYW5nDrtNKCPekAAAAAgJLkTA51OqTn5OTozjvv1Pnz59W0aVP5+/vbvT516lTnKy5BhHQAAAAAQEly6+HuL730klavXq0GDRpIksOF4wAAAAAAQNE4HdKnTp2quXPnasiQIW4oBwAAAACAssvpq78FBgaqffv27qgFAAAAAIAyzemQ/uSTT2r69OnuqAUAAAAAgDLN6cPdExMTtW7dOi1fvlyNGzd2uHDc559/7rLiAAAAAAAoS5wO6RUrVtQ999zjjloAAAAAACjTnA7p8+bNc0cdAAAAAACUeU6fkw4AAAAAANyjUHvSW7ZsqbVr16pSpUq66aabrno/9J07d7qsOAAAAAAAypJChfS77rpLgYGBkqS7777bnfUAAAAAAFBmWYwxxtNFlKT09HRZrValpaUpNDTU0+UAAAAAAK5zzuRQp89JP3r0qH777Tfb88TERD311FN67733nK8UAAAAAADYOB3SH3jgAa1fv16SlJKSottuu02JiYmaMGGCJk2a5PICAQAAAAAoK5wO6Xv27FGbNm0kSf/973/VtGlTbdmyRR999JE++OADV9cHAAAAAECZ4XRIv3jxou0icl9//bX69OkjSWrYsKGSk5NdWx0AAAAAAGWI0yG9cePGmjVrljZu3KiEhAT17NlTkvT777+rcuXKLi8QAAAAAICywumQ/sorr+jdd99Vp06ddP/996t58+aSpKVLl9oOgwcAAAAAAM4r0i3YcnJylJ6erkqVKtnaDh8+rODgYFWrVs2lBboat2ADAAAAAJQkZ3KoX1EW4OvraxfQJalOnTpFmRUAAAAAAPh/nD7cHQAAAAAAuAchHQAAAAAAL0FIBwAAAADASzgd0o8ePVrga9u2bStWMQAAAAAAlGVOh/Ru3brp1KlTDu2bN2+23TMdAAAAAAA4z+mQ3qFDB3Xv3l0ZGRm2tm+//Va9evVSXFycS4sDAAAAAKAscTqkv/fee4qOjtYdd9yhzMxMrV+/XnfccYcmTZqk0aNHu6NGAAAAAADKBKdDusVi0aJFixQUFKSuXbuqT58+mjx5sp588kl31AcAAAAAQJlhMcaYa3XavXu3Q1tGRobuv/9+3XHHHRoxYoStvVmzZq6t0MXS09NltVqVlpam0NBQT5cDAAAAALjOOZNDCxXSfXx8ZLFYdHnXy5/n/dtisSgnJ6eY5bsXIR0AAAAAUJKcyaF+hZlhUlKSSwoDAAAAAAAFK1RIj4qKcncdAAAAAACUeYUK6Vf6+eef9c033+jEiRPKzc21e+355593SWEAAAAAAJQ1Tof0999/XyNGjFCVKlVUvXp1WSwW22sWi4WQDgAAAABAETkd0l944QW9+OKLeuaZZ9xRDwAAAAAAZZbT90n/888/dd9997mjFgAAAAAAyjSnQ/p9992nNWvWuKMWAAAAAADKNKcPd7/hhhv03HPPadu2bWratKn8/f3tXh81apTLigMAAAAAoCyxGGOMMxNER0cXPDOLRYcOHSp2Ue7kzE3kAQAAAAAoLmdyqNN70pOSkopcGAAAAAAAKJjT56QDAAAAAAD3cHpP+tChQ6/6+ty5c4tcDAAAAAAAZZnTIf3PP/+0e37x4kXt2bNHp0+fVpcuXVxWGAAAAAAAZY3TIf2LL75waMvNzdVjjz2munXruqQoAAAAAADKIpeck+7j46PRo0frjTfecMXsAAAAAAAok1x24bhffvlF2dnZrpodAAAAAABljtOHu48ZM8buuTFGycnJ+uqrrzR48GCXFQYAAAAAQFnjdEj/4Ycf7J77+PioatWqev3116955XcAAAAAAFAwp0P6+vXr3VEHAAAAAABlnsvOSQcAAAAAAMXjdEg/fvy4Bg4cqMjISPn5+cnX19fuAQAAAAAAisbpw92HDBmiI0eO6LnnnlNERIQsFos76gIAAAAAoMxxOqRv2rRJGzduVIsWLdxQDgAAAAAAZZfTh7vXqlVLxhh31AIAAAAAQJnmdEifNm2axo0bp8OHD7uhHAAAAAAAyq5CHe5eqVIlu3PPz549q3r16ik4OFj+/v52fVNTU11bIQAAAAAAZUShQvq0adPcXAYAAAAAAChUSB88eLC76wAAAAAAoMxz+pz0FStWaPXq1Q7ta9as0cqVK11SFAAAAAAAZZHTIX3cuHHKyclxaM/NzdW4ceNcUhQAAAAAAGWR0yH9wIEDatSokUN7w4YNdfDgQZcUBQAAAABAWeR0SLdarTp06JBD+8GDBxUSEuKSogAAAAAAKIucDul9+vTRU089pV9++cXWdvDgQY0dO1Z9+vRxaXEAAAAAAJQlTof0V199VSEhIWrYsKGio6MVHR2tmJgYVa5cWa+99po7agQAAAAAoEwo1C3YLme1WrVlyxYlJCToxx9/VLly5dSsWTPdeuut7qgPAAAAAIAyw+mQLkkWi0Xdu3dXo0aNFBkZKR8fp3fIAwAAAACAKxQrXTdq1EiHDx8uVgEzZsxQdHS0goKC1KpVK23cuLFQ023evFl+fn5q0aJFsZYPAAAAAIC3KFZIN8YUa+GLFy/WU089pWeffVY//PCDOnTooNtvv11Hjhy56nRpaWkaNGiQunbtWqzlAwAAAADgTTx6nPrUqVM1bNgwPfzww4qJidG0adNUq1YtzZw586rTPfroo3rggQcUGxtbQpUCAAAAAOB+xQrpEyZMUFhYWJGmvXDhgnbs2KHu3bvbtXfv3l1btmwpcLp58+bpl19+UVxcXKGWk5WVpfT0dLsHAAAAAADeyOmQPnHiRP3666+SpPHjx6tixYpFWvDJkyeVk5Oj8PBwu/bw8HClpKTkO82BAwc0btw4LVy4UH5+hbvm3eTJk2W1Wm2PWrVqFaleAAAAAADczemQvmzZMtWrV09du3bVRx99pMzMzGIVYLFY7J4bYxzaJCknJ0cPPPCA4uPjdeONNxZ6/uPHj1daWprtcfTo0WLVCwAAAACAuzgd0nfs2KGdO3eqWbNmGj16tCIiIjRixAht377dqflUqVJFvr6+DnvNT5w44bB3XZIyMjL0/fff64knnpCfn5/8/Pw0adIk/fjjj/Lz89O6devyXU5gYKBCQ0PtHgAAAAAAeKMinZPerFkzvfHGGzp27Jjmzp2rY8eOqX379mratKnefPNNpaWlXXMeAQEBatWqlRISEuzaExIS1K5dO4f+oaGh+r//+z/t2rXL9hg+fLgaNGigXbt2qW3btkV5KwAAAAAAeI1iXTguNzdXFy5cUFZWlowxCgsL08yZM1WrVi0tXrz4mtOPGTNGs2fP1ty5c7V//36NHj1aR44c0fDhwyVdOlR90KBBlwr18VGTJk3sHtWqVVNQUJCaNGmikJCQ4rwVAAAAAAA8rnBXX7vCjh07NG/ePC1atEiBgYEaNGiQ3nnnHd1www2SpNdff12jRo1S//79rzqf/v3769SpU5o0aZKSk5PVpEkTrVixQlFRUZKk5OTka94zHQAAAACA64XFGGOcmaBZs2bav3+/unfvrkceeUS9e/eWr6+vXZ8//vhD4eHhys3NdWmxrpCeni6r1aq0tDTOTwcAAAAAuJ0zOdTpPen33Xefhg4dqho1ahTYp2rVql4Z0AEAAAAA8GZOnZN+8eJFzZs3r1AXhgMAAAAAAM5xKqT7+/srKysr3/uYAwAAAACA4nH66u4jR47UK6+8ouzsbHfUAwAAAABAmeX0Oenfffed1q5dqzVr1qhp06YOtz77/PPPXVYcAAAAAABlidMhvWLFirr33nvdUQsAAAAAAGWa0yF93rx57qgDAAAAAIAyz+lz0iUpOztbX3/9td59911lZGRIkn7//XedOXPGpcUBAAAAAFCWOL0n/ddff1XPnj115MgRZWVlqVu3bqpQoYKmTJmizMxMzZo1yx11AgAAAABw3XN6T/qTTz6p1q1b688//1S5cuVs7X379tXatWtdWhwAAAAAAGWJ03vSN23apM2bNysgIMCuPSoqSseOHXNZYQAAAAAAlDVO70nPzc1VTk6OQ/tvv/2mChUquKQoAAAAAADKIqdDerdu3TRt2jTbc4vFojNnziguLk69evVyZW0AAAAAAJQpFmOMcWaC33//XZ07d5avr68OHDig1q1b68CBA6pSpYq+/fZbVatWzV21ukR6erqsVqvS0tIUGhrq6XIAAAAAANc5Z3Ko0+ekR0ZGateuXVq0aJF27typ3NxcDRs2TA8++KDdheQAAAAAAIBznN6TXtqxJx0AAAAAUJLcuid9/vz5V3190KBBzs4SAAAAAACoCHvSK1WqZPf84sWLOnfunAICAhQcHKzU1FSXFuhq7EkHAAAAAJQkZ3Ko01d3//PPP+0eZ86c0U8//aRbbrlFixYtKnLRAAAAAACUdU6H9PzUr19fL7/8sp588klXzA4AAAAAgDLJJSFdknx9ffX777+7anYAAAAAAJQ5Tl84bunSpXbPjTFKTk7W22+/rfbt27usMAAAAAAAyhqnQ/rdd99t99xisahq1arq0qWLXn/9dVfVBQAAAABAmeN0SM/NzXVHHQAAAAAAlHlFPif95MmTSk9Pd2UtAAAAAACUaU6F9NOnT+vxxx9XlSpVFB4erkqVKql69eoaP368zp07564aAQAAAAAoEwp9uHtqaqpiY2N17NgxPfjgg4qJiZExRvv379f06dOVkJCgTZs26ccf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P7Z51z9CegmpVKmSmT17dr6vJSYmGkm2H7jTp08bf39/8/HHH9v6HDt2zPj4+JhVq1YVuIw2bdqY4cOH27U1bNjQjBs3zgXvoOxyZuzy89///tcEBASYixcvFtgnLi7ONG/evLil4grOjl3Hjh3Nk08+6dQy+N65T3G/ey1atDBDhw696jL47rnH1cYuLS3NSDJff/21MYZtnrdxZuzywzbPc5wdO7Z53qW43z22edcXDnd3s5ycHH388cc6e/asYmNj8+2TlpYmi8WiihUrSpJ27Nihixcvqnv37rY+kZGRatKkibZs2ZLvPC5cuKAdO3bYTSNJ3bt3L3AaXF1Rxq6gPqGhofLz87vq8g4cOKDIyEhFR0drwIABOnToUHHKL9OKM3YLFy5UlSpV1LhxYz399NPKyMgocDl879zDFd+9HTt2aNeuXRo2bNg1l8d3z3WuNXYXLlzQe++9J6vVqubNm0tim+ctijJ2+WGbV/KKM3Zs8zzPFd89tnnXIU//L8H1avfu3SYkJMT4+voaq9Vqvvrqq3z7nT9/3rRq1co8+OCDtraFCxeagIAAh77dunUzf//73/Odz7Fjx4wks3nzZrv2F1980dx4443FeCdlT3HG7konT540tWvXNs8+++xVl7lixQrz6aefmt27d5uEhATTsWNHEx4ebk6ePFms91LWFHfs3nvvPZOQkGD+7//+zyxatMjUqVPH3HbbbQUuj++da7nyuzdixAgTExNzzWXy3XONa43dsmXLTEhIiLFYLCYyMtIkJibaXmOb51nFGbsrsc0rWcUdO7Z5nuXK7x7bvOsPId1NsrKyzIEDB8z27dvNuHHjTJUqVczevXvt+ly4cMHcdddd5qabbjJpaWm29oL+YLntttvMo48+mu/y8n44t2zZYtf+wgsvmAYNGrjgHZUdxRm7y6WlpZm2bduanj17mgsXLjhVw5kzZ0x4eLh5/fXXi/w+yiJXjV2e77//3kgyO3bsyPd1vneu5arxO3funLFarea1115zuga+e0VzrbE7c+aMOXDggNm6dasZOnSoqVOnjjl+/Lgxhm2epxVn7C7HNq/kuWrs8rDNK1muGj+2edcnQnoJ6dq1q90egQsXLpi7777bNGvWzOF/r9auXWskmdTUVLv2Zs2ameeffz7f+WdlZRlfX1/z+eef27WPGjXK3HrrrS56F2WTM2OXJz093cTGxpquXbua8+fPF2m5t912m8N5X3BOUcbucrm5uQ7nyl6O7517FXX85s+fb/z9/Yt8MRy+e8V35dhd6YYbbjAvvfSSMYZtnrdxZuzysM3zDkUZu8uxzfOsoo4f27zrE+eklxBjjLKysiRdup1Qv379dODAAX399deqXLmyXd9WrVrJ399fCQkJtrbk5GTt2bNH7dq1y3f+AQEBatWqld00kpSQkFDgNCgcZ8ZOktLT09W9e3cFBARo6dKlCgoKcnqZWVlZ2r9/vyIiIopdf1nm7Nhdae/evbp48WKB48D3zr2KOn5z5sxRnz59VLVqVaeXyXfPNS4fu2u9zjbPuzgzdhLbPG/i7NhdiW2eZxV1/NjmXac8838D17fx48ebb7/91iQlJZndu3ebCRMmGB8fH7NmzRpz8eJF06dPH1OzZk2za9cuu1sgZGVl2eYxfPhwU7NmTfP111+bnTt3mi5dujjcjqZLly5m+vTptud5t8WYM2eO2bdvn3nqqadMSEiIOXz4cIm+/9KsuGOXnp5u2rZta5o2bWoOHjxo1+dqYzd27FjzzTffmEOHDplt27aZO++801SoUIGxc0Jxx+7gwYMmPj7ebN++3SQlJZmvvvrKNGzY0Nx0001870qAK343jTHmwIEDxmKxmJUrV+a7HL57rne1sTtz5owZP3682bp1qzl8+LDZsWOHGTZsmAkMDLTdasgYtnmeUtyxY5vnOcUdO7Z5nuWK301j2OZdzwjpbjB06FATFRVlAgICTNWqVU3Xrl3NmjVrjDHGJCUlGUn5PtavX2+bx/nz580TTzxhwsLCTLly5cydd95pjhw5YrecqKgoExcXZ9f2zjvv2JbdsmVLs2HDBne/3etKccdu/fr1BfZJSkqyLefKsevfv7+JiIgw/v7+JjIy0txzzz0O5+Li6oo7dkeOHDG33nqrCQsLMwEBAaZevXpm1KhR5tSpU3bL4XvnHq743TTm0h8+NWvWNDk5Ofkuh++e611t7M6fP2/69u1rIiMjTUBAgImIiDB9+vRxuAAS2zzPKO7Ysc3znOKOHds8z3LF76YxbPOuZxZjjHHvvnoAAAAAAFAYnJMOAAAAAICXIKQDAAAAAOAlCOkAAAAAAHgJQjoAAAAAAF6CkA4AAAAAgJcgpAMAAAAA4CUI6QAAAAAAeAlCOgAAAAAAXoKQDgBAKWKxWLRkyRK3L6dTp0566qmnCt3/m2++kcVi0enTp4u13CFDhujuu+8u1jwAACjNCOkAAHiJlJQUjRw5UnXr1lVgYKBq1aql3r17a+3atZ4u7ZratWun5ORkWa1WT5cCAECp5ufpAgAAgHT48GG1b99eFStW1JQpU9SsWTNdvHhRq1ev1uOPP67//e9/ni7xqgICAlS9enVPlwEAQKnHnnQAALzAY489JovFosTERP31r3/VjTfeqMaNG2vMmDHatm2bXd+TJ0+qb9++Cg4OVv369bV06VLbax988IEqVqxo13/JkiWyWCy25xMnTlSLFi304Ycfqk6dOrJarRowYIAyMjIKrG/VqlWyWq2aP39+vq9febh7Xh2rV69WTEyMypcvr549eyo5Odk2TU5OjsaMGaOKFSuqcuXK+uc//yljjN18jTGaMmWK6tatq3Llyql58+b69NNPba/ddttt6tmzp22606dPq3bt2nr22WcLfC8AAHgzQjoAAB6WmpqqVatW6fHHH1dISIjD61eG7vj4ePXr10+7d+9Wr1699OCDDyo1NdWpZf7yyy9asmSJli9fruXLl2vDhg16+eWX8+378ccfq1+/fpo/f74GDRpU6GWcO3dOr732mj788EN9++23OnLkiJ5++mnb66+//rrmzp2rOXPmaNOmTUpNTdUXX3xhN49//etfmjdvnmbOnKm9e/dq9OjReuihh7RhwwZZLBb95z//UWJiot566y1J0vDhwxUeHq6JEyc6tT4AAPAWHO4OAICHHTx4UMYYNWzYsFD9hwwZovvvv1+S9NJLL2n69OlKTExUz549C73M3NxcffDBB6pQoYIkaeDAgVq7dq1efPFFu34zZszQhAkT9OWXX6pz586Fnr8kXbx4UbNmzVK9evUkSU888YQmTZpke33atGkaP3687r33XknSrFmztHr1atvrZ8+e1dSpU7Vu3TrFxsZKkurWratNmzbp3XffVceOHVWjRg29++67GjhwoI4fP65ly5bphx9+kL+/v1O1AgDgLQjpAAB4WN6h2pcfkn41zZo1s/07JCREFSpU0IkTJ5xaZp06dWwBXZIiIiIc5vHZZ5/p+PHj2rRpk9q0aePU/CUpODjYFtCvXEZaWpqSk5Nt4VuS/Pz81Lp1a9v62LdvnzIzM9WtWze7+V64cEE33XST7fl9992nL774QpMnT9bMmTN14403Ol0rAADegpAOAICH1a9fXxaLRfv37y/U7ceu3EtssViUm5srSfLx8XE4r/vixYtOzSNPixYttHPnTs2bN09/+ctfCv2fCFdbxpW1XU1ePV999ZVq1Khh91pgYKDt3+fOndOOHTvk6+urAwcOOFUjAADehnPSAQDwsLCwMPXo0UPvvPOOzp496/C6M/cer1q1qjIyMuzms2vXriLVVa9ePa1fv15ffvmlRo4cWaR5FMRqtSoiIsLuonjZ2dnasWOH7XmjRo0UGBioI0eO6IYbbrB71KpVy9Zv7Nix8vHx0cqVK/XWW29p3bp1Lq0VAICSxJ50AAC8wIwZM9SuXTu1adNGkyZNUrNmzZSdna2EhATNnDlT+/fvL9R82rZtq+DgYE2YMEEjR45UYmKiPvjggyLXdeONN2r9+vXq1KmT/Pz8NG3atCLP60pPPvmkXn75ZdWvX18xMTGaOnWq3X9IVKhQQU8//bRGjx6t3Nxc3XLLLUpPT9eWLVtUvnx5DR48WF999ZXmzp2rrVu3qmXLlho3bpwGDx6s3bt3q1KlSi6rFQCAksKedAAAvEB0dLR27typzp07a+zYsWrSpIm6deumtWvXaubMmYWeT1hYmBYsWKAVK1aoadOmWrRoUbGvdN6gQQOtW7dOixYt0tixY4s1r8uNHTtWgwYN0pAhQxQbG6sKFSqob9++dn3+/e9/6/nnn9fkyZMVExOjHj16aNmyZYqOjtYff/yhYcOGaeLEiWrZsqUkKS4uTpGRkRo+fLjL6gQAoCRZjDMnhwEAAAAAALdhTzoAAAAAAF6CkA4AAAAAgJcgpAMAAAAA4CUI6QAAAAAAeAlCOgAAAAAAXoKQDgAAAACAlyCkAwAAAADgJQjpAAAAAAB4CUI6AAAAAABegpAOAAAAAICXIKQDAAAAAOAl/j9H1t0w6eKawAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_relevance_scores(chunk_values, 320, 340)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "What's interesting to note here is that only 7 of these 20 chunks have been marked as relevant by our reranker. And many of the non-relevant chunks are sandwiched between relevant chunks. Looking at the span of 323-336, exactly half of those chunks are marked as relevant and the other half are marked as not relevant.\n", "\n", "### Let's see what this part of the document contains" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def print_document_segment(chunks: List[str], start_index: int, end_index: int):\n", " \"\"\"\n", " Print the text content of a segment of the document\n", "\n", " Args:\n", " chunks (list): List of text chunks\n", " start_index (int): Start index of the segment\n", " end_index (int): End index of the segment (not inclusive)\n", "\n", " Returns:\n", " None\n", "\n", " Prints:\n", " The text content of the specified segment of the document\n", " \"\"\"\n", " for i in range(start_index, end_index):\n", " print(f\"\\nChunk {i}\")\n", " print(chunks[i])\n", "\n", "print_document_segment(chunks, 320, 340)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "We can see that the Consolidated Statement of Income starts in chunk 323, and everything up to chunk 333 contains consolidated financial statements, which is what we're looking for. So every chunk in that range is indeed relevant and necessary for our query, yet only about half of those chunks were marked as relevant by the reranker. So in addition to providing more complete context to the LLM, by combining these clusters of relevant chunks we actually find important chunks that otherwise would have been ignored." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "### What can we do with these clusters of relevant chunks?\n", "The core idea is that clusters of relevant chunks, in their original contiguous form, provide much better context to the LLM than individual chunks can. Now for the hard part: how do we actually identify these clusters?\n", "\n", "If we can calculate chunk values in such a way that the value of a segment is just the sum of the values of its constituent chunks, then finding the optimal segment is a version of the maximum subarray problem, for which a solution can be found relatively easily. How do we define chunk values in such a way? We'll start with the idea that highly relevant chunks are good, and irrelevant chunks are bad. We already have a good measure of chunk relevance, on a scale of 0-1, so all we need to do is subtract a constant threshold value from it. This will turn the chunk value of irrelevant chunks to a negative number, while keeping the values of relevant chunks positive. We call this the `irrelevant_chunk_penalty`. A value around 0.2 seems to work well empirically." ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "def get_best_segments(relevance_values: list, max_length: int, overall_max_length: int, minimum_value: float):\n", " \"\"\"\n", " This function takes the chunk relevance values and then runs an optimization algorithm to find the best segments. In more technical terms, it solves a constrained version of the maximum sum subarray problem.\n", "\n", " Note: this is a simplified implementation intended for demonstration purposes. A more sophisticated implementation would be needed for production use and is available in the dsRAG library.\n", "\n", " Args:\n", " relevance_values (list): a list of relevance values for each chunk of a document\n", " max_length (int): the maximum length of a single segment (measured in number of chunks)\n", " overall_max_length (int): the maximum length of all segments (measured in number of chunks)\n", " minimum_value (float): the minimum value that a segment must have to be considered\n", "\n", " Returns:\n", " best_segments (list): a list of tuples (start, end) that represent the indices of the best segments (the end index is non-inclusive) in the document\n", " scores (list): a list of the scores for each of the best segments\n", " \"\"\"\n", " best_segments = []\n", " scores = []\n", " total_length = 0\n", " while total_length < overall_max_length:\n", " # find the best remaining segment\n", " best_segment = None\n", " best_value = -1000\n", " for start in range(len(relevance_values)):\n", " # skip over negative value starting points\n", " if relevance_values[start] < 0:\n", " continue\n", " for end in range(start+1, min(start+max_length+1, len(relevance_values)+1)):\n", " # skip over negative value ending points\n", " if relevance_values[end-1] < 0:\n", " continue\n", " # check if this segment overlaps with any of the best segments and skip if it does\n", " if any(start < seg_end and end > seg_start for seg_start, seg_end in best_segments):\n", " continue\n", " # check if this segment would push us over the overall max length and skip if it would\n", " if total_length + end - start > overall_max_length:\n", " continue\n", " \n", " # define segment value as the sum of the relevance values of its chunks\n", " segment_value = sum(relevance_values[start:end])\n", " if segment_value > best_value:\n", " best_value = segment_value\n", " best_segment = (start, end)\n", " \n", " # if we didn't find a valid segment then we're done\n", " if best_segment is None or best_value < minimum_value:\n", " break\n", "\n", " # otherwise, add the segment to the list of best segments\n", " best_segments.append(best_segment)\n", " scores.append(best_value)\n", " total_length += best_segment[1] - best_segment[0]\n", " \n", " return best_segments, scores" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Best segment indices\n", "[(323, 337), (226, 231), (448, 453), (312, 313)]\n", "\n", "Best segment scores\n", "[2.5559905778741827, 1.6569259433941705, 0.7325434206345869, 0.7318070628222588]\n", "\n" ] } ], "source": [ "# define some parameters and constraints for the optimization\n", "irrelevant_chunk_penalty = 0.2 # empirically, something around 0.2 works well; lower values bias towards longer segments\n", "max_length = 20\n", "overall_max_length = 30\n", "minimum_value = 0.7\n", "\n", "# subtract constant threshold value from chunk relevance values\n", "relevance_values = [v - irrelevant_chunk_penalty for v in chunk_values] \n", "\n", "# run the optimization\n", "best_segments, scores = get_best_segments(relevance_values, max_length, overall_max_length, minimum_value)\n", "\n", "# print results\n", "print (\"Best segment indices\")\n", "print (best_segments) # indices of the best segments, with the end index non-inclusive\n", "print ()\n", "print (\"Best segment scores\")\n", "print (scores)\n", "print ()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "The first segment given by the optimization algorithm is chunks 323-336. Looking at the chunks manually, we decided that 323-333 was the ideal segment, so we got a few bonus chunks that we don't really need, but overall this is going to be a great piece of context for the LLM to work with. We also identified some shorter segments from other parts of the document that we could provide to the LLM as well.\n", "\n", "### What if the answer is contained in a single chunk?\n", "In the case where only a single chunk, or a few isolated chunks, are relevant to the query, we don't want to create large segments out of them. We just want to return those specific chunks. RSE can handle that scenario well too. Since there are no clusters of relevant chunks, it basically reduces to standard top-k retrieval in that case. We'll leave it as an exercise to the reader to see what happens to the chunk relevance plot and the resulting best segments for queries like this." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Eval results\n", "\n", "### KITE\n", "We evaluated RSE on an end-to-end RAG benchmark we created, called [KITE](https://github.com/D-Star-AI/KITE) (Knowledge-Intensive Task Evaluation).\n", "\n", "KITE currently consists of 4 datasets and a total of 50 questions.\n", "- **AI Papers** - ~100 academic papers about AI and RAG, downloaded from arXiv in PDF form.\n", "- **BVP Cloud 10-Ks** - 10-Ks for all companies in the Bessemer Cloud Index (~70 of them), in PDF form.\n", "- **Sourcegraph Company Handbook** - ~800 markdown files, with their original directory structure, downloaded from Sourcegraph's publicly accessible company handbook GitHub [page](https://github.com/sourcegraph/handbook/tree/main/content).\n", "- **Supreme Court Opinions** - All Supreme Court opinions from Term Year 2022 (delivered from January '23 to June '23), downloaded from the official Supreme Court [website](https://www.supremecourt.gov/opinions/slipopinion/22) in PDF form.\n", "\n", "Ground truth answers are included with each sample. Most samples also include grading rubrics. Grading is done on a scale of 0-10 for each question, with a strong LLM doing the grading.\n", "\n", "We compare RSE with standard Top-k retrieval (k=20). All other parameters remain the same between the two configurations. We use the Cohere 3 reranker, and we use GPT-4o for response generation. The average length of the relevant knowledge string is roughly the same between the two configurations, so cost and latency are similar.\n", "\n", "| | Top-k | RSE |\n", "|-------------------------|----------|--------|\n", "| AI Papers | 4.5 | 7.9 |\n", "| BVP Cloud | 2.6 | 4.4 |\n", "| Sourcegraph | 5.7 | 6.6 |\n", "| Supreme Court Opinions | 6.1 | 8.0 |\n", "| **Average** | 4.72 | 6.73 |\n", "\n", "We can see that RSE leads to an improvement in performance on each of the four datasets. The overall average score increases from 4.72 -> 6.73, a 42.6% increase.\n", "\n", "### FinanceBench\n", "We've also evaluated RSE on FinanceBench, where it contributed to a score of 83%, compared to a baseline score of 19%. For that benchmark, we tested contextual chunk headers (CCH) and RSE jointly, so we can't say exactly how much RSE contributed to that result. But the combination of CCH and RSE clearly leads to substantial accuracy improvements on FinanceBench." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--relevant-segment-extraction)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.13 (main, Aug 25 2022, 18:29:29) \n[Clang 12.0.0 ]" }, "vscode": { "interpreter": { "hash": "44d0561a9d33f22b2e67e0485c48036e39d1c698628b030a9859974b559ff507" } } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/reliable_rag.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "### Visual Representation\n", "\n", "\"Reliable-RAG\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain langchain-community python-dotenv" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "### LLMs\n", "import os\n", "from dotenv import load_dotenv\n", "\n", "# Load environment variables from '.env' file\n", "load_dotenv()\n", "\n", "os.environ['GROQ_API_KEY'] = os.getenv('GROQ_API_KEY') # For LLM -- llama-3.1-8b (small) & mixtral-8x7b-32768 (large)\n", "os.environ['COHERE_API_KEY'] = os.getenv('COHERE_API_KEY') # For embedding" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create Vectorstore" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "### Build Index\n", "from langchain.text_splitter import RecursiveCharacterTextSplitter\n", "from langchain_community.document_loaders import WebBaseLoader\n", "from langchain_community.vectorstores import Chroma\n", "from langchain_cohere import CohereEmbeddings\n", "\n", "# Set embeddings\n", "embedding_model = CohereEmbeddings(model=\"embed-english-v3.0\")\n", "\n", "# Docs to index\n", "urls = [\n", " \"https://www.deeplearning.ai/the-batch/how-agents-can-improve-llm-performance/?ref=dl-staging-website.ghost.io\",\n", " \"https://www.deeplearning.ai/the-batch/agentic-design-patterns-part-2-reflection/?ref=dl-staging-website.ghost.io\",\n", " \"https://www.deeplearning.ai/the-batch/agentic-design-patterns-part-3-tool-use/?ref=dl-staging-website.ghost.io\",\n", " \"https://www.deeplearning.ai/the-batch/agentic-design-patterns-part-4-planning/?ref=dl-staging-website.ghost.io\",\n", " \"https://www.deeplearning.ai/the-batch/agentic-design-patterns-part-5-multi-agent-collaboration/?ref=dl-staging-website.ghost.io\"\n", "]\n", "\n", "# Load\n", "docs = [WebBaseLoader(url).load() for url in urls]\n", "docs_list = [item for sublist in docs for item in sublist]\n", "\n", "# Split\n", "text_splitter = RecursiveCharacterTextSplitter.from_tiktoken_encoder(\n", " chunk_size=500, chunk_overlap=0\n", ")\n", "doc_splits = text_splitter.split_documents(docs_list)\n", "\n", "# Add to vectorstore\n", "vectorstore = Chroma.from_documents(\n", " documents=doc_splits,\n", " collection_name=\"rag\",\n", " embedding=embedding_model,\n", ")\n", "\n", "retriever = vectorstore.as_retriever(\n", " search_type=\"similarity\",\n", " search_kwargs={'k': 4}, # number of documents to retrieve\n", " )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Question" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "question = \"what are the differnt kind of agentic design patterns?\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Retrieve docs" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "docs = retriever.invoke(question)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Check what our doc looklike" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Title: Agentic Design Patterns Part 5, Multi-Agent Collaboration\n", "\n", "Source: https://www.deeplearning.ai/the-batch/agentic-design-patterns-part-5-multi-agent-collaboration/?ref=dl-staging-website.ghost.io\n", "\n", "Content: mature patterns of Reflection and Tool Use are more reliable. I hope you enjoy playing with these agentic design patterns and that they produce amazing results for you! If you're interested in learning more, I recommend: ‚ÄúCommunicative Agents for Software Development,‚Äù Qian et al. (2023) (the ChatDev paper)‚ÄúAutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation,‚Äù Wu et al. (2023) ‚ÄúMetaGPT: Meta Programming for a Multi-Agent Collaborative Framework,‚Äù Hong et al. (2023)Keep learning!AndrewRead \"Agentic Design Patterns Part 1: Four AI agent strategies that improve GPT-4 and GPT-3.5 performance\"Read \"Agentic Design Patterns Part 2: Reflection\" Read \"Agentic Design Patterns Part 3: Tool Use\"Read \"Agentic Design Patterns Part 4: Planning\" ShareSubscribe to The BatchStay updated with weekly AI News and Insights delivered to your inboxCoursesThe BatchCommunityCareersAbout\n", "\n" ] } ], "source": [ "print(f\"Title: {docs[0].metadata['title']}\\n\\nSource: {docs[0].metadata['source']}\\n\\nContent: {docs[0].page_content}\\n\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Check document relevancy" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "from langchain_core.prompts import ChatPromptTemplate\n", "from pydantic import BaseModel, Field\n", "from langchain_groq import ChatGroq\n", "\n", "# Data model\n", "class GradeDocuments(BaseModel):\n", " \"\"\"Binary score for relevance check on retrieved documents.\"\"\"\n", "\n", " binary_score: str = Field(\n", " description=\"Documents are relevant to the question, 'yes' or 'no'\"\n", " )\n", "\n", "\n", "# LLM with function call\n", "llm = ChatGroq(model=\"llama-3.1-8b-instant\", temperature=0)\n", "structured_llm_grader = llm.with_structured_output(GradeDocuments)\n", "\n", "# Prompt\n", "system = \"\"\"You are a grader assessing relevance of a retrieved document to a user question. \\n \n", " If the document contains keyword(s) or semantic meaning related to the user question, grade it as relevant. \\n\n", " It does not need to be a stringent test. The goal is to filter out erroneous retrievals. \\n\n", " Give a binary score 'yes' or 'no' score to indicate whether the document is relevant to the question.\"\"\"\n", "grade_prompt = ChatPromptTemplate.from_messages(\n", " [\n", " (\"system\", system),\n", " (\"human\", \"Retrieved document: \\n\\n {document} \\n\\n User question: {question}\"),\n", " ]\n", ")\n", "\n", "retrieval_grader = grade_prompt | structured_llm_grader" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Filter out the non-relevant docs" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "mature patterns of Reflection and Tool Use are more reliable. I hope you enjoy playing with these agentic design patterns and that they produce amazing results for you! If you're interested in learning more, I recommend: ‚ÄúCommunicative Agents for Software Development,‚Äù Qian et al. (2023) (the ChatDev paper)‚ÄúAutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation,‚Äù Wu et al. (2023) ‚ÄúMetaGPT: Meta Programming for a Multi-Agent Collaborative Framework,‚Äù Hong et al. (2023)Keep learning!AndrewRead \"Agentic Design Patterns Part 1: Four AI agent strategies that improve GPT-4 and GPT-3.5 performance\"Read \"Agentic Design Patterns Part 2: Reflection\" Read \"Agentic Design Patterns Part 3: Tool Use\"Read \"Agentic Design Patterns Part 4: Planning\" ShareSubscribe to The BatchStay updated with weekly AI News and Insights delivered to your inboxCoursesThe BatchCommunityCareersAbout \n", " --------------------------------------------------\n", "binary_score='yes' \n", "\n", "I recommend: ‚ÄúGorilla: Large Language Model Connected with Massive APIs,‚Äù Patil et al. (2023)‚ÄúMM-REACT: Prompting ChatGPT for Multimodal Reasoning and Action,‚Äù Yang et al. (2023)‚ÄúEfficient Tool Use with Chain-of-Abstraction Reasoning,‚Äù Gao et al. (2024)   Both Tool Use and Reflection, which I described in last week‚Äôs letter, are design patterns that I can get to work fairly reliably on my applications ‚Äî both are capabilities well worth learning about. In future letters, I‚Äôll describe the Planning and Multi-agent collaboration design patterns. They allow AI agents to do much more but are less mature, less predictable ‚Äî albeit very exciting ‚Äî technologies. Keep learning!AndrewRead \"Agentic Design Patterns Part 1: Four AI agent strategies that improve GPT-4 and GPT-3.5 performance\"Read \"Agentic Design Patterns Part 2: Reflection\"Read \"Agentic Design Patterns Part 4: Planning\"Read \"Agentic Design Patterns Part 5: Multi-Agent Collaboration\"ShareSubscribe to The BatchStay updated with weekly AI News and Insights delivered to your inboxCoursesThe BatchCommunityCareersAbout \n", " --------------------------------------------------\n", "binary_score='yes' \n", "\n", "67.0%. However, the improvement from GPT-3.5 to GPT-4 is dwarfed by incorporating an iterative agent workflow. Indeed, wrapped in an agent loop, GPT-3.5 achieves up to 95.1%. Open source agent tools and the academic literature on agents are proliferating, making this an exciting time but also a confusing one. To help put this work into perspective, I’d like to share a framework for categorizing design patterns for building agents. My team AI Fund is successfully using these patterns in many applications, and I hope you find them useful.Reflection: The LLM examines its own work to come up with ways to improve it. Tool Use: The LLM is given tools such as web search, code execution, or any other function to help it gather information, take action, or process data.Planning: The LLM comes up with, and executes, a multistep plan to achieve a goal (for example, writing an outline for an essay, then doing online research, then writing a draft, and so on).Multi-agent collaboration: More than one AI agent work together, splitting up tasks and discussing and debating ideas, to come up with better solutions than a single agent would.Next week, I’ll elaborate on these design patterns and offer suggested readings for each.Keep learning!AndrewRead \"Agentic Design Patterns Part 2: Reflection\"Read \"Agentic Design Patterns Part 3, Tool Use\"Read \"Agentic Design Patterns Part 4: Planning\"Read \"Agentic Design Patterns Part 5: Multi-Agent Collaboration\"ShareSubscribe to The BatchStay updated with weekly AI News and Insights delivered to your inboxCoursesThe BatchCommunityCareersAbout \n", " --------------------------------------------------\n", "binary_score='yes' \n", "\n", "Agentic Design Patterns Part 4: Planningüåü New Course! Enroll in Large Multimodal Model Prompting with GeminiExplore CoursesAI NewsletterThe BatchAndrew's LetterData PointsML ResearchBlogCommunityForumEventsAmbassadorsAmbassador SpotlightResourcesCompanyAboutCareersContactStart LearningWeekly IssuesAndrew's LettersData PointsML ResearchBusinessScienceAI & SocietyCultureHardwareAI CareersAboutSubscribeThe BatchLettersArticleAgentic Design Patterns Part 4, Planning Large language models can drive powerful agents to execute complex tasks if you ask them to plan the steps before they act.LettersTechnical InsightsPublishedApr 10, 2024Reading time3 min readShareDear friends,Planning is a key agentic AI design pattern in which we use a large language model (LLM) to autonomously decide on what sequence of steps to execute to accomplish a larger task. For example, if we ask an agent to do online research on a given topic, we might use an LLM to break down the objective into smaller subtasks, such as researching specific subtopics, synthesizing findings, and compiling a report. Many people had a ‚ÄúChatGPT moment‚Äù shortly after ChatGPT was released, when they played with it and were surprised that it significantly exceeded their expectation of what AI can do. If you have not yet had a similar ‚ÄúAI Agentic moment,‚Äù I hope you will soon. I had one several months ago, when I presented a live demo of a research agent I had implemented that had access to various online search tools. I had tested this agent multiple times privately, during which it consistently used a web search tool to gather information and wrote up a summary. During the live demo, though, the web search API unexpectedly returned with a rate limiting error. I thought my demo was about to fail publicly, and I dreaded what was to come next. To my surprise, the agent pivoted deftly to a Wikipedia search tool ‚Äî which I had forgotten I‚Äôd given it ‚Äî and completed the task using Wikipedia instead of web search. This was an AI Agentic moment of surprise for me. I think many people who haven‚Äôt experienced such a moment yet will do so in the coming months. It‚Äôs \n", " --------------------------------------------------\n", "binary_score='yes' \n", "\n" ] } ], "source": [ "docs_to_use = []\n", "for doc in docs:\n", " print(doc.page_content, '\\n', '-'*50)\n", " res = retrieval_grader.invoke({\"question\": question, \"document\": doc.page_content})\n", " print(res,'\\n')\n", " if res.binary_score == 'yes':\n", " docs_to_use.append(doc)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Generate Result" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "According to the retrieved documents, there are four main agentic design patterns:\n", "\n", "1. **Reflection**: The LLM examines its own work to come up with ways to improve it.\n", "2. **Tool Use**: The LLM is given tools such as web search, code execution, or any other function to help it gather information, take action, or process data.\n", "3. **Planning**: The LLM comes up with, and executes, a multistep plan to achieve a goal.\n", "4. **Multi-agent collaboration**: More than one AI agent work together, splitting up tasks and discussing and debating ideas, to come up with better solutions than a single agent would.\n" ] } ], "source": [ "from langchain_core.output_parsers import StrOutputParser\n", "\n", "# Prompt\n", "system = \"\"\"You are an assistant for question-answering tasks. Answer the question based upon your knowledge. \n", "Use three-to-five sentences maximum and keep the answer concise.\"\"\"\n", "prompt = ChatPromptTemplate.from_messages(\n", " [\n", " (\"system\", system),\n", " (\"human\", \"Retrieved documents: \\n\\n {documents} \\n\\n User question: {question}\"),\n", " ]\n", ")\n", "\n", "# LLM\n", "llm = ChatGroq(model=\"llama-3.1-8b-instant\", temperature=0)\n", "\n", "# Post-processing\n", "def format_docs(docs):\n", " return \"\\n\".join(f\":\\nTitle:{doc.metadata['title']}\\nSource:{doc.metadata['source']}\\nContent:{doc.page_content}\\n\\n\" for i, doc in enumerate(docs))\n", "\n", "# Chain\n", "rag_chain = prompt | llm | StrOutputParser()\n", "\n", "# Run\n", "generation = rag_chain.invoke({\"documents\":format_docs(docs_to_use), \"question\": question})\n", "print(generation)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Check for Hallucinations" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "binary_score='yes'\n" ] } ], "source": [ "# Data model\n", "class GradeHallucinations(BaseModel):\n", " \"\"\"Binary score for hallucination present in 'generation' answer.\"\"\"\n", "\n", " binary_score: str = Field(\n", " ...,\n", " description=\"Answer is grounded in the facts, 'yes' or 'no'\"\n", " )\n", "\n", "# LLM with function call\n", "llm = ChatGroq(model=\"llama-3.1-8b-instant\", temperature=0)\n", "structured_llm_grader = llm.with_structured_output(GradeHallucinations)\n", "\n", "# Prompt\n", "system = \"\"\"You are a grader assessing whether an LLM generation is grounded in / supported by a set of retrieved facts. \\n \n", " Give a binary score 'yes' or 'no'. 'Yes' means that the answer is grounded in / supported by the set of facts.\"\"\"\n", "hallucination_prompt = ChatPromptTemplate.from_messages(\n", " [\n", " (\"system\", system),\n", " (\"human\", \"Set of facts: \\n\\n {documents} \\n\\n LLM generation: {generation}\"),\n", " ]\n", ")\n", "\n", "hallucination_grader = hallucination_prompt | structured_llm_grader\n", "\n", "response = hallucination_grader.invoke({\"documents\": format_docs(docs_to_use), \"generation\": generation})\n", "print(response)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Highlight used docs" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "from typing import List\n", "from langchain.output_parsers import PydanticOutputParser\n", "from langchain_core.prompts import PromptTemplate\n", "\n", "# Data model\n", "class HighlightDocuments(BaseModel):\n", " \"\"\"Return the specific part of a document used for answering the question.\"\"\"\n", "\n", " id: List[str] = Field(\n", " ...,\n", " description=\"List of id of docs used to answers the question\"\n", " )\n", "\n", " title: List[str] = Field(\n", " ...,\n", " description=\"List of titles used to answers the question\"\n", " )\n", "\n", " source: List[str] = Field(\n", " ...,\n", " description=\"List of sources used to answers the question\"\n", " )\n", "\n", " segment: List[str] = Field(\n", " ...,\n", " description=\"List of direct segements from used documents that answers the question\"\n", " )\n", "\n", "# LLM\n", "llm = ChatGroq(model=\"mixtral-8x7b-32768\", temperature=0)\n", "\n", "# parser\n", "parser = PydanticOutputParser(pydantic_object=HighlightDocuments)\n", "\n", "# Prompt\n", "system = \"\"\"You are an advanced assistant for document search and retrieval. You are provided with the following:\n", "1. A question.\n", "2. A generated answer based on the question.\n", "3. A set of documents that were referenced in generating the answer.\n", "\n", "Your task is to identify and extract the exact inline segments from the provided documents that directly correspond to the content used to \n", "generate the given answer. The extracted segments must be verbatim snippets from the documents, ensuring a word-for-word match with the text \n", "in the provided documents.\n", "\n", "Ensure that:\n", "- (Important) Each segment is an exact match to a part of the document and is fully contained within the document text.\n", "- The relevance of each segment to the generated answer is clear and directly supports the answer provided.\n", "- (Important) If you didn't used the specific document don't mention it.\n", "\n", "Used documents: {documents} \\n\\n User question: {question} \\n\\n Generated answer: {generation}\n", "\n", "\n", "{format_instructions}\n", "\n", "\"\"\"\n", "\n", "\n", "prompt = PromptTemplate(\n", " template= system,\n", " input_variables=[\"documents\", \"question\", \"generation\"],\n", " partial_variables={\"format_instructions\": parser.get_format_instructions()},\n", ")\n", "\n", "# Chain\n", "doc_lookup = prompt | llm | parser\n", "\n", "# Run\n", "lookup_response = doc_lookup.invoke({\"documents\":format_docs(docs_to_use), \"question\": question, \"generation\": generation})" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "ID: doc3\n", "Title: Four AI Agent Strategies That Improve GPT-4 and GPT-3.5 Performance\n", "Source: https://www.deeplearning.ai/the-batch/how-agents-can-improve-llm-performance/?ref=dl-staging-website.ghost.io\n", "Text Segment: Reflection: The LLM examines its own work to come up with ways to improve it.\\nTool Use: The LLM is given tools such as web search, code execution, or any other function to help it gather information, take action, or process data.\\nPlanning: The LLM comes up with, and executes, a multistep plan to achieve a goal (for example, writing an outline for an essay, then doing online research, then writing a draft, and so on).\\nMulti-agent collaboration: More than one AI agent work together, splitting up tasks and discussing and debating ideas, to come up with better solutions than a single agent would.\n", "\n" ] } ], "source": [ "for id, title, source, segment in zip(lookup_response.id, lookup_response.title, lookup_response.source, lookup_response.segment):\n", " print(f\"ID: {id}\\nTitle: {title}\\nSource: {source}\\nText Segment: {segment}\\n\")" ] }, { "attachments": { "image.png": { "image/png": "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" } }, "cell_type": "markdown", "metadata": {}, "source": [ "### Text segment in the source\n", "\n", "![image.png](attachment:image.png)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--reliable-rag)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/reranking.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Reranking Methods in RAG Systems\n", "\n", "## Overview\n", "Reranking is a crucial step in Retrieval-Augmented Generation (RAG) systems that aims to improve the relevance and quality of retrieved documents. It involves reassessing and reordering initially retrieved documents to ensure that the most pertinent information is prioritized for subsequent processing or presentation.\n", "\n", "## Motivation\n", "The primary motivation for reranking in RAG systems is to overcome limitations of initial retrieval methods, which often rely on simpler similarity metrics. Reranking allows for more sophisticated relevance assessment, taking into account nuanced relationships between queries and documents that might be missed by traditional retrieval techniques. This process aims to enhance the overall performance of RAG systems by ensuring that the most relevant information is used in the generation phase.\n", "\n", "## Key Components\n", "Reranking systems typically include the following components:\n", "\n", "1. Initial Retriever: Often a vector store using embedding-based similarity search.\n", "2. Reranking Model: This can be either:\n", " - A Large Language Model (LLM) for scoring relevance\n", " - A Cross-Encoder model specifically trained for relevance assessment\n", "3. Scoring Mechanism: A method to assign relevance scores to documents\n", "4. Sorting and Selection Logic: To reorder documents based on new scores\n", "\n", "## Method Details\n", "The reranking process generally follows these steps:\n", "\n", "1. Initial Retrieval: Fetch an initial set of potentially relevant documents.\n", "2. Pair Creation: Form query-document pairs for each retrieved document.\n", "3. Scoring: \n", " - LLM Method: Use prompts to ask the LLM to rate document relevance.\n", " - Cross-Encoder Method: Feed query-document pairs directly into the model.\n", "4. Score Interpretation: Parse and normalize the relevance scores.\n", "5. Reordering: Sort documents based on their new relevance scores.\n", "6. Selection: Choose the top K documents from the reordered list.\n", "\n", "## Benefits of this Approach\n", "Reranking offers several advantages:\n", "\n", "1. Improved Relevance: By using more sophisticated models, reranking can capture subtle relevance factors.\n", "2. Flexibility: Different reranking methods can be applied based on specific needs and resources.\n", "3. Enhanced Context Quality: Providing more relevant documents to the RAG system improves the quality of generated responses.\n", "4. Reduced Noise: Reranking helps filter out less relevant information, focusing on the most pertinent content.\n", "\n", "## Conclusion\n", "Reranking is a powerful technique in RAG systems that significantly enhances the quality of retrieved information. Whether using LLM-based scoring or specialized Cross-Encoder models, reranking allows for more nuanced and accurate assessment of document relevance. This improved relevance translates directly to better performance in downstream tasks, making reranking an essential component in advanced RAG implementations.\n", "\n", "The choice between LLM-based and Cross-Encoder reranking methods depends on factors such as required accuracy, available computational resources, and specific application needs. Both approaches offer substantial improvements over basic retrieval methods and contribute to the overall effectiveness of RAG systems." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"rerank\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"rerank\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain langchain-openai python-dotenv sentence-transformers" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 106, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from langchain.docstore.document import Document\n", "from typing import List, Dict, Any, Tuple\n", "from langchain_openai import ChatOpenAI\n", "from langchain.chains import RetrievalQA\n", "from langchain_core.retrievers import BaseRetriever\n", "from sentence_transformers import CrossEncoder\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the document's path" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 107, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a vector store" ] }, { "cell_type": "code", "execution_count": 108, "metadata": {}, "outputs": [], "source": [ "vectorstore = encode_pdf(path)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Method 1: LLM based function to rerank the retrieved documents" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"rerank\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a custom reranking function\n" ] }, { "cell_type": "code", "execution_count": 115, "metadata": {}, "outputs": [], "source": [ "class RatingScore(BaseModel):\n", " relevance_score: float = Field(..., description=\"The relevance score of a document to a query.\")\n", "\n", "def rerank_documents(query: str, docs: List[Document], top_n: int = 3) -> List[Document]:\n", " prompt_template = PromptTemplate(\n", " input_variables=[\"query\", \"doc\"],\n", " template=\"\"\"On a scale of 1-10, rate the relevance of the following document to the query. Consider the specific context and intent of the query, not just keyword matches.\n", " Query: {query}\n", " Document: {doc}\n", " Relevance Score:\"\"\"\n", " )\n", " \n", " llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\", max_tokens=4000)\n", " llm_chain = prompt_template | llm.with_structured_output(RatingScore)\n", " \n", " scored_docs = []\n", " for doc in docs:\n", " input_data = {\"query\": query, \"doc\": doc.page_content}\n", " score = llm_chain.invoke(input_data).relevance_score\n", " try:\n", " score = float(score)\n", " except ValueError:\n", " score = 0 # Default score if parsing fails\n", " scored_docs.append((doc, score))\n", " \n", " reranked_docs = sorted(scored_docs, key=lambda x: x[1], reverse=True)\n", " return [doc for doc, _ in reranked_docs[:top_n]]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example usage of the reranking function with a sample query relevant to the document\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "query = \"What are the impacts of climate change on biodiversity?\"\n", "initial_docs = vectorstore.similarity_search(query, k=15)\n", "reranked_docs = rerank_documents(query, initial_docs)\n", "\n", "# print first 3 initial documents\n", "print(\"Top initial documents:\")\n", "for i, doc in enumerate(initial_docs[:3]):\n", " print(f\"\\nDocument {i+1}:\")\n", " print(doc.page_content[:200] + \"...\") # Print first 200 characters of each document\n", "\n", "\n", "# Print results\n", "print(f\"Query: {query}\\n\")\n", "print(\"Top reranked documents:\")\n", "for i, doc in enumerate(reranked_docs):\n", " print(f\"\\nDocument {i+1}:\")\n", " print(doc.page_content[:200] + \"...\") # Print first 200 characters of each document" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a custom retriever based on our reranker" ] }, { "cell_type": "code", "execution_count": 114, "metadata": {}, "outputs": [], "source": [ "# Create a custom retriever class\n", "class CustomRetriever(BaseRetriever, BaseModel):\n", " \n", " vectorstore: Any = Field(description=\"Vector store for initial retrieval\")\n", "\n", " class Config:\n", " arbitrary_types_allowed = True\n", "\n", " def get_relevant_documents(self, query: str, num_docs=2) -> List[Document]:\n", " initial_docs = self.vectorstore.similarity_search(query, k=30)\n", " return rerank_documents(query, initial_docs, top_n=num_docs)\n", "\n", "\n", "# Create the custom retriever\n", "custom_retriever = CustomRetriever(vectorstore=vectorstore)\n", "\n", "# Create an LLM for answering questions\n", "llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\")\n", "\n", "# Create the RetrievalQA chain with the custom retriever\n", "qa_chain = RetrievalQA.from_chain_type(\n", " llm=llm,\n", " chain_type=\"stuff\",\n", " retriever=custom_retriever,\n", " return_source_documents=True\n", ")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example query\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "result = qa_chain({\"query\": query})\n", "\n", "print(f\"\\nQuestion: {query}\")\n", "print(f\"Answer: {result['result']}\")\n", "print(\"\\nRelevant source documents:\")\n", "for i, doc in enumerate(result[\"source_documents\"]):\n", " print(f\"\\nDocument {i+1}:\")\n", " print(doc.page_content[:200] + \"...\") # Print first 200 characters of each document" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example that demonstrates why we should use reranking " ] }, { "cell_type": "code", "execution_count": 123, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Comparison of Retrieval Techniques\n", "==================================\n", "Query: what is the capital of france?\n", "\n", "Baseline Retrieval Result:\n", "\n", "Document 1:\n", "The capital of France is great.\n", "\n", "Document 2:\n", "The capital of France is beautiful.\n", "\n", "Advanced Retrieval Result:\n", "\n", "Document 1:\n", "I really enjoyed my trip to Paris, France. The city is beautiful and the food is delicious. I would love to visit again. Such a great capital city.\n", "\n", "Document 2:\n", "Have you ever visited Paris? It is a beautiful city where you can eat delicious food and see the Eiffel Tower. \n", " I really enjoyed all the cities in france, but its capital with the Eiffel Tower is my favorite city.\n" ] } ], "source": [ "chunks = [\n", " \"The capital of France is great.\",\n", " \"The capital of France is huge.\",\n", " \"The capital of France is beautiful.\",\n", " \"\"\"Have you ever visited Paris? It is a beautiful city where you can eat delicious food and see the Eiffel Tower. \n", " I really enjoyed all the cities in france, but its capital with the Eiffel Tower is my favorite city.\"\"\", \n", " \"I really enjoyed my trip to Paris, France. The city is beautiful and the food is delicious. I would love to visit again. Such a great capital city.\"\n", "]\n", "docs = [Document(page_content=sentence) for sentence in chunks]\n", "\n", "\n", "def compare_rag_techniques(query: str, docs: List[Document] = docs) -> None:\n", " embeddings = OpenAIEmbeddings()\n", " vectorstore = FAISS.from_documents(docs, embeddings)\n", "\n", " print(\"Comparison of Retrieval Techniques\")\n", " print(\"==================================\")\n", " print(f\"Query: {query}\\n\")\n", " \n", " print(\"Baseline Retrieval Result:\")\n", " baseline_docs = vectorstore.similarity_search(query, k=2)\n", " for i, doc in enumerate(baseline_docs):\n", " print(f\"\\nDocument {i+1}:\")\n", " print(doc.page_content)\n", "\n", " print(\"\\nAdvanced Retrieval Result:\")\n", " custom_retriever = CustomRetriever(vectorstore=vectorstore)\n", " advanced_docs = custom_retriever.get_relevant_documents(query)\n", " for i, doc in enumerate(advanced_docs):\n", " print(f\"\\nDocument {i+1}:\")\n", " print(doc.page_content)\n", "\n", "\n", "query = \"what is the capital of france?\"\n", "compare_rag_techniques(query, docs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Method 2: Cross Encoder models" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"rerank\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define the cross encoder class" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "cross_encoder = CrossEncoder('cross-encoder/ms-marco-MiniLM-L-6-v2')\n", "\n", "class CrossEncoderRetriever(BaseRetriever, BaseModel):\n", " vectorstore: Any = Field(description=\"Vector store for initial retrieval\")\n", " cross_encoder: Any = Field(description=\"Cross-encoder model for reranking\")\n", " k: int = Field(default=5, description=\"Number of documents to retrieve initially\")\n", " rerank_top_k: int = Field(default=3, description=\"Number of documents to return after reranking\")\n", "\n", " class Config:\n", " arbitrary_types_allowed = True\n", "\n", " def get_relevant_documents(self, query: str) -> List[Document]:\n", " # Initial retrieval\n", " initial_docs = self.vectorstore.similarity_search(query, k=self.k)\n", " \n", " # Prepare pairs for cross-encoder\n", " pairs = [[query, doc.page_content] for doc in initial_docs]\n", " \n", " # Get cross-encoder scores\n", " scores = self.cross_encoder.predict(pairs)\n", " \n", " # Sort documents by score\n", " scored_docs = sorted(zip(initial_docs, scores), key=lambda x: x[1], reverse=True)\n", " \n", " # Return top reranked documents\n", " return [doc for doc, _ in scored_docs[:self.rerank_top_k]]\n", "\n", " async def aget_relevant_documents(self, query: str) -> List[Document]:\n", " raise NotImplementedError(\"Async retrieval not implemented\")\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create an instance and showcase over an example" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Create the cross-encoder retriever\n", "cross_encoder_retriever = CrossEncoderRetriever(\n", " vectorstore=vectorstore,\n", " cross_encoder=cross_encoder,\n", " k=10, # Retrieve 10 documents initially\n", " rerank_top_k=5 # Return top 5 after reranking\n", ")\n", "\n", "# Set up the LLM\n", "llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\")\n", "\n", "# Create the RetrievalQA chain with the cross-encoder retriever\n", "qa_chain = RetrievalQA.from_chain_type(\n", " llm=llm,\n", " chain_type=\"stuff\",\n", " retriever=cross_encoder_retriever,\n", " return_source_documents=True\n", ")\n", "\n", "# Example query\n", "query = \"What are the impacts of climate change on biodiversity?\"\n", "result = qa_chain({\"query\": query})\n", "\n", "print(f\"\\nQuestion: {query}\")\n", "print(f\"Answer: {result['result']}\")\n", "print(\"\\nRelevant source documents:\")\n", "for i, doc in enumerate(result[\"source_documents\"]):\n", " print(f\"\\nDocument {i+1}:\")\n", " print(doc.page_content[:200] + \"...\") # Print first 200 characters of each document" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--reranking)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/reranking_with_llamaindex.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Reranking Methods in RAG Systems\n", "\n", "## Overview\n", "Reranking is a crucial step in Retrieval-Augmented Generation (RAG) systems that aims to improve the relevance and quality of retrieved documents. It involves reassessing and reordering initially retrieved documents to ensure that the most pertinent information is prioritized for subsequent processing or presentation.\n", "\n", "## Motivation\n", "The primary motivation for reranking in RAG systems is to overcome limitations of initial retrieval methods, which often rely on simpler similarity metrics. Reranking allows for more sophisticated relevance assessment, taking into account nuanced relationships between queries and documents that might be missed by traditional retrieval techniques. This process aims to enhance the overall performance of RAG systems by ensuring that the most relevant information is used in the generation phase.\n", "\n", "## Key Components\n", "Reranking systems typically include the following components:\n", "\n", "1. Initial Retriever: Often a vector store using embedding-based similarity search.\n", "2. Reranking Model: This can be either:\n", " - A Large Language Model (LLM) for scoring relevance\n", " - A Cross-Encoder model specifically trained for relevance assessment\n", "3. Scoring Mechanism: A method to assign relevance scores to documents\n", "4. Sorting and Selection Logic: To reorder documents based on new scores\n", "\n", "## Method Details\n", "The reranking process generally follows these steps:\n", "\n", "1. Initial Retrieval: Fetch an initial set of potentially relevant documents.\n", "2. Pair Creation: Form query-document pairs for each retrieved document.\n", "3. Scoring: \n", " - LLM Method: Use prompts to ask the LLM to rate document relevance.\n", " - Cross-Encoder Method: Feed query-document pairs directly into the model.\n", "4. Score Interpretation: Parse and normalize the relevance scores.\n", "5. Reordering: Sort documents based on their new relevance scores.\n", "6. Selection: Choose the top K documents from the reordered list.\n", "\n", "## Benefits of this Approach\n", "Reranking offers several advantages:\n", "\n", "1. Improved Relevance: By using more sophisticated models, reranking can capture subtle relevance factors.\n", "2. Flexibility: Different reranking methods can be applied based on specific needs and resources.\n", "3. Enhanced Context Quality: Providing more relevant documents to the RAG system improves the quality of generated responses.\n", "4. Reduced Noise: Reranking helps filter out less relevant information, focusing on the most pertinent content.\n", "\n", "## Conclusion\n", "Reranking is a powerful technique in RAG systems that significantly enhances the quality of retrieved information. Whether using LLM-based scoring or specialized Cross-Encoder models, reranking allows for more nuanced and accurate assessment of document relevance. This improved relevance translates directly to better performance in downstream tasks, making reranking an essential component in advanced RAG implementations.\n", "\n", "The choice between LLM-based and Cross-Encoder reranking methods depends on factors such as required accuracy, available computational resources, and specific application needs. Both approaches offer substantial improvements over basic retrieval methods and contribute to the overall effectiveness of RAG systems." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"rerank\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"rerank\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu llama-index python-dotenv" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from typing import List\n", "from llama_index.core import Document\n", "from llama_index.core import Settings\n", "from llama_index.embeddings.openai import OpenAIEmbedding\n", "from llama_index.llms.openai import OpenAI\n", "from llama_index.core.readers import SimpleDirectoryReader\n", "from llama_index.vector_stores.faiss import FaissVectorStore\n", "from llama_index.core.ingestion import IngestionPipeline\n", "from llama_index.core.node_parser import SentenceSplitter\n", "from llama_index.core import VectorStoreIndex\n", "from llama_index.core.postprocessor import SentenceTransformerRerank, LLMRerank\n", "from llama_index.core import QueryBundle\n", "import faiss\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "\n", "# Llamaindex global settings for llm and embeddings\n", "EMBED_DIMENSION=512\n", "Settings.llm = OpenAI(model=\"gpt-3.5-turbo\")\n", "Settings.embed_model = OpenAIEmbedding(model=\"text-embedding-3-small\", dimensions=EMBED_DIMENSION)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Read docs" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "path = \"data/\"\n", "reader = SimpleDirectoryReader(input_dir=path, required_exts=['.pdf'])\n", "documents = reader.load_data()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a vector store" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# Create FaisVectorStore to store embeddings\n", "fais_index = faiss.IndexFlatL2(EMBED_DIMENSION)\n", "vector_store = FaissVectorStore(faiss_index=fais_index)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Ingestion Pipeline" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "base_pipeline = IngestionPipeline(\n", " transformations=[SentenceSplitter()],\n", " vector_store=vector_store,\n", " documents=documents\n", ")\n", "\n", "nodes = base_pipeline.run()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Querying" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Method 1: LLM based reranking the retrieved documents" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"rerank\n", "
" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# Create vector index from base nodes\n", "index = VectorStoreIndex(nodes)\n", "\n", "query_engine_w_llm_rerank = index.as_query_engine(\n", " similarity_top_k=10,\n", " node_postprocessors=[\n", " LLMRerank(\n", " top_n=5\n", " )\n", " ],\n", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "resp = query_engine_w_llm_rerank.query(\"What are the impacts of climate change on biodiversity?\")\n", "print(resp)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Example that demonstrates why we should use reranking " ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Comparison of Retrieval Techniques\n", "==================================\n", "Query: what is the capital of france?\n", "\n", "Baseline Retrieval Result:\n", "\n", "Document 1:\n", "The capital of France is great.\n", "\n", "Document 2:\n", "The capital of France is huge.\n", "\n", "Advanced Retrieval Result:\n", "\n", "Document 1:\n", "Have you ever visited Paris? It is a beautiful city where you can eat delicious food and see the Eiffel Tower. I really enjoyed all the cities in france, but its capital with the Eiffel Tower is my favorite city.\n", "\n", "Document 2:\n", "I really enjoyed my trip to Paris, France. The city is beautiful and the food is delicious. I would love to visit again. Such a great capital city.\n" ] } ], "source": [ "chunks = [\n", " \"The capital of France is great.\",\n", " \"The capital of France is huge.\",\n", " \"The capital of France is beautiful.\",\n", " \"\"\"Have you ever visited Paris? It is a beautiful city where you can eat delicious food and see the Eiffel Tower. I really enjoyed all the cities in france, but its capital with the Eiffel Tower is my favorite city.\"\"\", \n", " \"I really enjoyed my trip to Paris, France. The city is beautiful and the food is delicious. I would love to visit again. Such a great capital city.\"\n", "]\n", "docs = [Document(page_content=sentence) for sentence in chunks]\n", "\n", "\n", "def compare_rag_techniques(query: str, docs: List[Document] = docs) -> None:\n", " docs = [Document(text=sentence) for sentence in chunks]\n", " index = VectorStoreIndex.from_documents(docs)\n", " \n", " \n", " print(\"Comparison of Retrieval Techniques\")\n", " print(\"==================================\")\n", " print(f\"Query: {query}\\n\")\n", " \n", " print(\"Baseline Retrieval Result:\")\n", " baseline_docs = index.as_retriever(similarity_top_k=5).retrieve(query)\n", " for i, doc in enumerate(baseline_docs[:2]): # Get only the first two retrieved docs\n", " print(f\"\\nDocument {i+1}:\")\n", " print(doc.text)\n", "\n", " print(\"\\nAdvanced Retrieval Result:\")\n", " reranker = LLMRerank(\n", " top_n=2,\n", " )\n", " advanced_docs = reranker.postprocess_nodes(\n", " baseline_docs, \n", " QueryBundle(query)\n", " )\n", " for i, doc in enumerate(advanced_docs):\n", " print(f\"\\nDocument {i+1}:\")\n", " print(doc.text)\n", "\n", "\n", "query = \"what is the capital of france?\"\n", "compare_rag_techniques(query, docs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Method 2: Cross Encoder models" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"rerank\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "LlamaIndex has builtin support for [SBERT](https://www.sbert.net/index.html) models that can be used directly as node postprocessor." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "query_engine_w_cross_encoder = index.as_query_engine(\n", " similarity_top_k=10,\n", " node_postprocessors=[\n", " SentenceTransformerRerank(\n", " model='cross-encoder/ms-marco-MiniLM-L-6-v2',\n", " top_n=5\n", " )\n", " ],\n", ")\n", "\n", "resp = query_engine_w_cross_encoder.query(\"What are the impacts of climate change on biodiversity?\")\n", "print(resp)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--reranking-with-llamaindex)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.5" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/retrieval_with_feedback_loop.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# RAG System with Feedback Loop: Enhancing Retrieval and Response Quality\n", "\n", "## Overview\n", "\n", "This system implements a Retrieval-Augmented Generation (RAG) approach with an integrated feedback loop. It aims to improve the quality and relevance of responses over time by incorporating user feedback and dynamically adjusting the retrieval process.\n", "\n", "## Motivation\n", "\n", "Traditional RAG systems can sometimes produce inconsistent or irrelevant responses due to limitations in the retrieval process or the underlying knowledge base. By implementing a feedback loop, we can:\n", "\n", "1. Continuously improve the quality of retrieved documents\n", "2. Enhance the relevance of generated responses\n", "3. Adapt the system to user preferences and needs over time\n", "\n", "## Key Components\n", "\n", "1. **PDF Content Extraction**: Extracts text from PDF documents\n", "2. **Vectorstore**: Stores and indexes document embeddings for efficient retrieval\n", "3. **Retriever**: Fetches relevant documents based on user queries\n", "4. **Language Model**: Generates responses using retrieved documents\n", "5. **Feedback Collection**: Gathers user feedback on response quality and relevance\n", "6. **Feedback Storage**: Persists user feedback for future use\n", "7. **Relevance Score Adjustment**: Modifies document relevance based on feedback\n", "8. **Index Fine-tuning**: Periodically updates the vectorstore using accumulated feedback\n", "\n", "## Method Details\n", "\n", "### 1. Initial Setup\n", "- The system reads PDF content and creates a vectorstore\n", "- A retriever is initialized using the vectorstore\n", "- A language model (LLM) is set up for response generation\n", "\n", "### 2. Query Processing\n", "- When a user submits a query, the retriever fetches relevant documents\n", "- The LLM generates a response based on the retrieved documents\n", "\n", "### 3. Feedback Collection\n", "- The system collects user feedback on the response's relevance and quality\n", "- Feedback is stored in a JSON file for persistence\n", "\n", "### 4. Relevance Score Adjustment\n", "- For subsequent queries, the system loads previous feedback\n", "- An LLM evaluates the relevance of past feedback to the current query\n", "- Document relevance scores are adjusted based on this evaluation\n", "\n", "### 5. Retriever Update\n", "- The retriever is updated with the adjusted document scores\n", "- This ensures that future retrievals benefit from past feedback\n", "\n", "### 6. Periodic Index Fine-tuning\n", "- At regular intervals, the system fine-tunes the index\n", "- High-quality feedback is used to create additional documents\n", "- The vectorstore is updated with these new documents, improving overall retrieval quality\n", "\n", "## Benefits of this Approach\n", "\n", "1. **Continuous Improvement**: The system learns from each interaction, gradually enhancing its performance.\n", "2. **Personalization**: By incorporating user feedback, the system can adapt to individual or group preferences over time.\n", "3. **Increased Relevance**: The feedback loop helps prioritize more relevant documents in future retrievals.\n", "4. **Quality Control**: Low-quality or irrelevant responses are less likely to be repeated as the system evolves.\n", "5. **Adaptability**: The system can adjust to changes in user needs or document contents over time.\n", "\n", "## Conclusion\n", "\n", "This RAG system with a feedback loop represents a significant advancement over traditional RAG implementations. By continuously learning from user interactions, it offers a more dynamic, adaptive, and user-centric approach to information retrieval and response generation. This system is particularly valuable in domains where information accuracy and relevance are critical, and where user needs may evolve over time.\n", "\n", "While the implementation adds complexity compared to a basic RAG system, the benefits in terms of response quality and user satisfaction make it a worthwhile investment for applications requiring high-quality, context-aware information retrieval and generation." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"retrieval\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain langchain-openai python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from langchain_text_splitters import RecursiveCharacterTextSplitter\n", "from langchain_openai import ChatOpenAI\n", "from langchain.chains import RetrievalQA\n", "import json\n", "from typing import List, Dict, Any\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "os.environ[\"KMP_DUPLICATE_LIB_OK\"]=\"TRUE\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define documents path" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/feedback_data.json https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/feedback_data.json\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create vector store and retrieval QA chain" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "content = read_pdf_to_string(path)\n", "vectorstore = encode_from_string(content)\n", "retriever = vectorstore.as_retriever()\n", "\n", "llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\", max_tokens=4000)\n", "qa_chain = RetrievalQA.from_chain_type(llm, retriever=retriever)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Function to format user feedback in a dictionary" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "def get_user_feedback(query, response, relevance, quality, comments=\"\"):\n", " return {\n", " \"query\": query,\n", " \"response\": response,\n", " \"relevance\": int(relevance),\n", " \"quality\": int(quality),\n", " \"comments\": comments\n", " }" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Function to store the feedback in a json file" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "def store_feedback(feedback):\n", " with open(\"data/feedback_data.json\", \"a\") as f:\n", " json.dump(feedback, f)\n", " f.write(\"\\n\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Function to read the feedback file" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "def load_feedback_data():\n", " feedback_data = []\n", " try:\n", " with open(\"data/feedback_data.json\", \"r\") as f:\n", " for line in f:\n", " feedback_data.append(json.loads(line.strip()))\n", " except FileNotFoundError:\n", " print(\"No feedback data file found. Starting with empty feedback.\")\n", " return feedback_data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Function to adjust files relevancy based on the feedbacks file" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "class Response(BaseModel):\n", " answer: str = Field(..., title=\"The answer to the question. The options can be only 'Yes' or 'No'\")\n", "\n", "def adjust_relevance_scores(query: str, docs: List[Any], feedback_data: List[Dict[str, Any]]) -> List[Any]:\n", " # Create a prompt template for relevance checking\n", " relevance_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"feedback_query\", \"doc_content\", \"feedback_response\"],\n", " template=\"\"\"\n", " Determine if the following feedback response is relevant to the current query and document content.\n", " You are also provided with the Feedback original query that was used to generate the feedback response.\n", " Current query: {query}\n", " Feedback query: {feedback_query}\n", " Document content: {doc_content}\n", " Feedback response: {feedback_response}\n", " \n", " Is this feedback relevant? Respond with only 'Yes' or 'No'.\n", " \"\"\"\n", " )\n", " llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\", max_tokens=4000)\n", "\n", " # Create an LLMChain for relevance checking\n", " relevance_chain = relevance_prompt | llm.with_structured_output(Response)\n", "\n", " for doc in docs:\n", " relevant_feedback = []\n", " \n", " for feedback in feedback_data:\n", " # Use LLM to check relevance\n", " input_data = {\n", " \"query\": query,\n", " \"feedback_query\": feedback['query'],\n", " \"doc_content\": doc.page_content[:1000],\n", " \"feedback_response\": feedback['response']\n", " }\n", " result = relevance_chain.invoke(input_data).answer\n", " \n", " if result == 'yes':\n", " relevant_feedback.append(feedback)\n", " \n", " # Adjust the relevance score based on feedback\n", " if relevant_feedback:\n", " avg_relevance = sum(f['relevance'] for f in relevant_feedback) / len(relevant_feedback)\n", " doc.metadata['relevance_score'] *= (avg_relevance / 3) # Assuming a 1-5 scale, 3 is neutral\n", " \n", " # Re-rank documents based on adjusted scores\n", " return sorted(docs, key=lambda x: x.metadata['relevance_score'], reverse=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Function to fine tune the vector index to include also queries + answers that received good feedbacks" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "def fine_tune_index(feedback_data: List[Dict[str, Any]], texts: List[str]) -> Any:\n", " # Filter high-quality responses\n", " good_responses = [f for f in feedback_data if f['relevance'] >= 4 and f['quality'] >= 4]\n", " \n", " # Extract queries and responses, and create new documents\n", " additional_texts = []\n", " for f in good_responses:\n", " combined_text = f['query'] + \" \" + f['response']\n", " additional_texts.append(combined_text)\n", "\n", " # make the list a string\n", " additional_texts = \" \".join(additional_texts)\n", " \n", " # Create a new index with original and high-quality texts\n", " all_texts = texts + additional_texts\n", " new_vectorstore = encode_from_string(all_texts)\n", " \n", " return new_vectorstore" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Demonstration of how to retrieve answers with respect to user feedbacks" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "\n", "query = \"What is the greenhouse effect?\"\n", "\n", "# Get response from RAG system\n", "response = qa_chain(query)[\"result\"]\n", "\n", "relevance = 5\n", "quality = 5\n", "\n", "# Collect feedback\n", "feedback = get_user_feedback(query, response, relevance, quality)\n", "\n", "# Store feedback\n", "store_feedback(feedback)\n", "\n", "# Adjust relevance scores for future retrievals\n", "docs = retriever.get_relevant_documents(query)\n", "adjusted_docs = adjust_relevance_scores(query, docs, load_feedback_data())\n", "\n", "# Update the retriever with adjusted docs\n", "retriever.search_kwargs['k'] = len(adjusted_docs)\n", "retriever.search_kwargs['docs'] = adjusted_docs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Finetune the vectorstore periodicly" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "# Periodically (e.g., daily or weekly), fine-tune the index\n", "new_vectorstore = fine_tune_index(load_feedback_data(), content)\n", "retriever = new_vectorstore.as_retriever()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--retrieval-with-feedback-loop)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/self_rag.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Self-RAG: A Dynamic Approach to Retrieval-Augmented Generation\n", "\n", "## Overview\n", "\n", "Self-RAG is an advanced algorithm that combines the power of retrieval-based and generation-based approaches in natural language processing. It dynamically decides whether to use retrieved information and how to best utilize it in generating responses, aiming to produce more accurate, relevant, and useful outputs.\n", "\n", "## Motivation\n", "\n", "Traditional question-answering systems often struggle with balancing the use of retrieved information and the generation of new content. Some systems might rely too heavily on retrieved data, leading to responses that lack flexibility, while others might generate responses without sufficient grounding in factual information. Self-RAG addresses these issues by implementing a multi-step process that carefully evaluates the necessity and relevance of retrieved information, and assesses the quality of generated responses.\n", "\n", "## Key Components\n", "\n", "1. **Retrieval Decision**: Determines if retrieval is necessary for a given query.\n", "2. **Document Retrieval**: Fetches potentially relevant documents from a vector store.\n", "3. **Relevance Evaluation**: Assesses the relevance of retrieved documents to the query.\n", "4. **Response Generation**: Generates responses based on relevant contexts.\n", "5. **Support Assessment**: Evaluates how well the generated response is supported by the context.\n", "6. **Utility Evaluation**: Rates the usefulness of the generated response.\n", "\n", "## Method Details\n", "\n", "1. **Retrieval Decision**: The algorithm first decides if retrieval is necessary for the given query. This step prevents unnecessary retrieval for queries that can be answered directly.\n", "\n", "2. **Document Retrieval**: If retrieval is deemed necessary, the algorithm fetches the top-k most similar documents from a vector store.\n", "\n", "3. **Relevance Evaluation**: Each retrieved document is evaluated for its relevance to the query. This step filters out irrelevant information, ensuring that only pertinent context is used for generation.\n", "\n", "4. **Response Generation**: The algorithm generates responses using the relevant contexts. If no relevant contexts are found, it generates a response without retrieval.\n", "\n", "5. **Support Assessment**: Each generated response is evaluated to determine how well it is supported by the context. This step helps in identifying responses that are grounded in the provided information.\n", "\n", "6. **Utility Evaluation**: The utility of each response is rated, considering how well it addresses the original query.\n", "\n", "7. **Response Selection**: The final step involves selecting the best response based on the support assessment and utility evaluation.\n", "\n", "## Benefits of the Approach\n", "\n", "1. **Dynamic Retrieval**: By deciding whether retrieval is necessary, the system can adapt to different types of queries efficiently.\n", "\n", "2. **Relevance Filtering**: The relevance evaluation step ensures that only pertinent information is used, reducing noise in the generation process.\n", "\n", "3. **Quality Assurance**: The support assessment and utility evaluation provide a way to gauge the quality of generated responses.\n", "\n", "4. **Flexibility**: The system can generate responses with or without retrieval, adapting to the available information.\n", "\n", "5. **Improved Accuracy**: By grounding responses in relevant retrieved information and assessing their support, the system can produce more accurate outputs.\n", "\n", "## Conclusion\n", "\n", "Self-RAG represents a sophisticated approach to question-answering and information retrieval tasks. By incorporating multiple evaluation steps and dynamically deciding on the use of retrieved information, it aims to produce responses that are not only relevant and accurate but also useful to the end-user. This method showcases the potential of combining retrieval and generation techniques in a thoughtful, evaluated manner to enhance the quality of AI-generated responses." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"Self\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain langchain-openai python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from langchain.prompts import PromptTemplate\n", "from langchain_openai import ChatOpenAI\n", "from langchain_core.pydantic_v1 import BaseModel, Field\n", "\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define files path" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create a vector store " ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "vectorstore = encode_pdf(path)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Initialize the language model\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "llm = ChatOpenAI(model=\"gpt-4o-mini\", max_tokens=1000, temperature=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Defining prompt templates" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "class RetrievalResponse(BaseModel):\n", " response: str = Field(..., title=\"Determines if retrieval is necessary\", description=\"Output only 'Yes' or 'No'.\")\n", "retrieval_prompt = PromptTemplate(\n", " input_variables=[\"query\"],\n", " template=\"Given the query '{query}', determine if retrieval is necessary. Output only 'Yes' or 'No'.\"\n", ")\n", "\n", "class RelevanceResponse(BaseModel):\n", " response: str = Field(..., title=\"Determines if context is relevant\", description=\"Output only 'Relevant' or 'Irrelevant'.\")\n", "relevance_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"context\"],\n", " template=\"Given the query '{query}' and the context '{context}', determine if the context is relevant. Output only 'Relevant' or 'Irrelevant'.\"\n", ")\n", "\n", "class GenerationResponse(BaseModel):\n", " response: str = Field(..., title=\"Generated response\", description=\"The generated response.\")\n", "generation_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"context\"],\n", " template=\"Given the query '{query}' and the context '{context}', generate a response.\"\n", ")\n", "\n", "class SupportResponse(BaseModel):\n", " response: str = Field(..., title=\"Determines if response is supported\", description=\"Output 'Fully supported', 'Partially supported', or 'No support'.\")\n", "support_prompt = PromptTemplate(\n", " input_variables=[\"response\", \"context\"],\n", " template=\"Given the response '{response}' and the context '{context}', determine if the response is supported by the context. Output 'Fully supported', 'Partially supported', or 'No support'.\"\n", ")\n", "\n", "class UtilityResponse(BaseModel):\n", " response: int = Field(..., title=\"Utility rating\", description=\"Rate the utility of the response from 1 to 5.\")\n", "utility_prompt = PromptTemplate(\n", " input_variables=[\"query\", \"response\"],\n", " template=\"Given the query '{query}' and the response '{response}', rate the utility of the response from 1 to 5.\"\n", ")\n", "\n", "# Create LLMChains for each step\n", "retrieval_chain = retrieval_prompt | llm.with_structured_output(RetrievalResponse)\n", "relevance_chain = relevance_prompt | llm.with_structured_output(RelevanceResponse)\n", "generation_chain = generation_prompt | llm.with_structured_output(GenerationResponse)\n", "support_chain = support_prompt | llm.with_structured_output(SupportResponse)\n", "utility_chain = utility_prompt | llm.with_structured_output(UtilityResponse)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Defining the self RAG logic flow" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "def self_rag(query, vectorstore, top_k=3):\n", " print(f\"\\nProcessing query: {query}\")\n", " \n", " # Step 1: Determine if retrieval is necessary\n", " print(\"Step 1: Determining if retrieval is necessary...\")\n", " input_data = {\"query\": query}\n", " retrieval_decision = retrieval_chain.invoke(input_data).response.strip().lower()\n", " print(f\"Retrieval decision: {retrieval_decision}\")\n", " \n", " if retrieval_decision == 'yes':\n", " # Step 2: Retrieve relevant documents\n", " print(\"Step 2: Retrieving relevant documents...\")\n", " docs = vectorstore.similarity_search(query, k=top_k)\n", " contexts = [doc.page_content for doc in docs]\n", " print(f\"Retrieved {len(contexts)} documents\")\n", " \n", " # Step 3: Evaluate relevance of retrieved documents\n", " print(\"Step 3: Evaluating relevance of retrieved documents...\")\n", " relevant_contexts = []\n", " for i, context in enumerate(contexts):\n", " input_data = {\"query\": query, \"context\": context}\n", " relevance = relevance_chain.invoke(input_data).response.strip().lower()\n", " print(f\"Document {i+1} relevance: {relevance}\")\n", " if relevance == 'relevant':\n", " relevant_contexts.append(context)\n", " \n", " print(f\"Number of relevant contexts: {len(relevant_contexts)}\")\n", " \n", " # If no relevant contexts found, generate without retrieval\n", " if not relevant_contexts:\n", " print(\"No relevant contexts found. Generating without retrieval...\")\n", " input_data = {\"query\": query, \"context\": \"No relevant context found.\"}\n", " return generation_chain.invoke(input_data).response\n", " \n", " # Step 4: Generate response using relevant contexts\n", " print(\"Step 4: Generating responses using relevant contexts...\")\n", " responses = []\n", " for i, context in enumerate(relevant_contexts):\n", " print(f\"Generating response for context {i+1}...\")\n", " input_data = {\"query\": query, \"context\": context}\n", " response = generation_chain.invoke(input_data).response\n", " \n", " # Step 5: Assess support\n", " print(f\"Step 5: Assessing support for response {i+1}...\")\n", " input_data = {\"response\": response, \"context\": context}\n", " support = support_chain.invoke(input_data).response.strip().lower()\n", " print(f\"Support assessment: {support}\")\n", " \n", " # Step 6: Evaluate utility\n", " print(f\"Step 6: Evaluating utility for response {i+1}...\")\n", " input_data = {\"query\": query, \"response\": response}\n", " utility = int(utility_chain.invoke(input_data).response)\n", " print(f\"Utility score: {utility}\")\n", " \n", " responses.append((response, support, utility))\n", " \n", " # Select the best response based on support and utility\n", " print(\"Selecting the best response...\")\n", " best_response = max(responses, key=lambda x: (x[1] == 'fully supported', x[2]))\n", " print(f\"Best response support: {best_response[1]}, utility: {best_response[2]}\")\n", " return best_response[0]\n", " else:\n", " # Generate without retrieval\n", " print(\"Generating without retrieval...\")\n", " input_data = {\"query\": query, \"context\": \"No retrieval necessary.\"}\n", " return generation_chain.invoke(input_data).response" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Test the self-RAG function easy query with high relevance\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "query = \"What is the impact of climate change on the environment?\"\n", "response = self_rag(query, vectorstore)\n", "\n", "print(\"\\nFinal response:\")\n", "print(response)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Test the self-RAG function with a more challenging query with low relevance\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "query = \"how did harry beat quirrell?\"\n", "response = self_rag(query, vectorstore)\n", "\n", "print(\"\\nFinal response:\")\n", "print(response)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--self-rag)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/semantic_chunking.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Semantic Chunking for Document Processing\n", "\n", "## Overview\n", "\n", "This code implements a semantic chunking approach for processing and retrieving information from PDF documents, [first proposed by Greg Kamradt](https://youtu.be/8OJC21T2SL4?t=1933) and subsequently [implemented in LangChain](https://python.langchain.com/docs/how_to/semantic-chunker/). Unlike traditional methods that split text based on fixed character or word counts, semantic chunking aims to create more meaningful and context-aware text segments.\n", "\n", "## Motivation\n", "\n", "Traditional text splitting methods often break documents at arbitrary points, potentially disrupting the flow of information and context. Semantic chunking addresses this issue by attempting to split text at more natural breakpoints, preserving semantic coherence within each chunk.\n", "\n", "## Key Components\n", "\n", "1. PDF processing and text extraction\n", "2. Semantic chunking using LangChain's SemanticChunker\n", "3. Vector store creation using FAISS and OpenAI embeddings\n", "4. Retriever setup for querying the processed documents\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing\n", "\n", "1. The PDF is read and converted to a string using a custom `read_pdf_to_string` function.\n", "\n", "### Semantic Chunking\n", "\n", "1. Utilizes LangChain's `SemanticChunker` with OpenAI embeddings.\n", "2. Three breakpoint types are available:\n", " - 'percentile': Splits at differences greater than the X percentile.\n", " - 'standard_deviation': Splits at differences greater than X standard deviations.\n", " - 'interquartile': Uses the interquartile distance to determine split points.\n", "3. In this implementation, the 'percentile' method is used with a threshold of 90.\n", "\n", "### Vector Store Creation\n", "\n", "1. OpenAI embeddings are used to create vector representations of the semantic chunks.\n", "2. A FAISS vector store is created from these embeddings for efficient similarity search.\n", "\n", "### Retriever Setup\n", "\n", "1. A retriever is configured to fetch the top 2 most relevant chunks for a given query.\n", "\n", "## Key Features\n", "\n", "1. Context-Aware Splitting: Attempts to maintain semantic coherence within chunks.\n", "2. Flexible Configuration: Allows for different breakpoint types and thresholds.\n", "3. Integration with Advanced NLP Tools: Uses OpenAI embeddings for both chunking and retrieval.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Improved Coherence: Chunks are more likely to contain complete thoughts or ideas.\n", "2. Better Retrieval Relevance: By preserving context, retrieval accuracy may be enhanced.\n", "3. Adaptability: The chunking method can be adjusted based on the nature of the documents and retrieval needs.\n", "4. Potential for Better Understanding: LLMs or downstream tasks may perform better with more coherent text segments.\n", "\n", "## Implementation Details\n", "\n", "1. Uses OpenAI's embeddings for both the semantic chunking process and the final vector representations.\n", "2. Employs FAISS for creating an efficient searchable index of the chunks.\n", "3. The retriever is set up to return the top 2 most relevant chunks, which can be adjusted as needed.\n", "\n", "## Example Usage\n", "\n", "The code includes a test query: \"What is the main cause of climate change?\". This demonstrates how the semantic chunking and retrieval system can be used to find relevant information from the processed document.\n", "\n", "## Conclusion\n", "\n", "Semantic chunking represents an advanced approach to document processing for retrieval systems. By attempting to maintain semantic coherence within text segments, it has the potential to improve the quality of retrieved information and enhance the performance of downstream NLP tasks. This technique is particularly valuable for processing long, complex documents where maintaining context is crucial, such as scientific papers, legal documents, or comprehensive reports." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"Self\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install langchain-experimental langchain-openai python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "\n", "# Original path append replaced for Colab compatibility\n", "from helper_functions import *\n", "from evaluation.evalute_rag import *\n", "\n", "from langchain_experimental.text_splitter import SemanticChunker\n", "from langchain_openai.embeddings import OpenAIEmbeddings\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define file path" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Read PDF to string" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "content = read_pdf_to_string(path)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Breakpoint types: \n", "* 'percentile': all differences between sentences are calculated, and then any difference greater than the X percentile is split.\n", "* 'standard_deviation': any difference greater than X standard deviations is split.\n", "* 'interquartile': the interquartile distance is used to split chunks." ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [], "source": [ "text_splitter = SemanticChunker(OpenAIEmbeddings(), breakpoint_threshold_type='percentile', breakpoint_threshold_amount=90) # chose which embeddings and breakpoint type and threshold to use" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Split original text to semantic chunks" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [], "source": [ "docs = text_splitter.create_documents([content])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create vector store and retriever" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [], "source": [ "embeddings = OpenAIEmbeddings()\n", "vectorstore = FAISS.from_documents(docs, embeddings)\n", "chunks_query_retriever = vectorstore.as_retriever(search_kwargs={\"k\": 2})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Test the retriever" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "test_query = \"What is the main cause of climate change?\"\n", "context = retrieve_context_per_question(test_query, chunks_query_retriever)\n", "show_context(context)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--semantic-chunking)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/simple_csv_rag.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Simple RAG (Retrieval-Augmented Generation) System for CSV Files\n", "\n", "## Overview\n", "\n", "This code implements a basic Retrieval-Augmented Generation (RAG) system for processing and querying CSV documents. The system encodes the document content into a vector store, which can then be queried to retrieve relevant information.\n", "\n", "# CSV File Structure and Use Case\n", "The CSV file contains dummy customer data, comprising various attributes like first name, last name, company, etc. This dataset will be utilized for a RAG use case, facilitating the creation of a customer information Q&A system.\n", "\n", "## Key Components\n", "\n", "1. Loading and spliting csv files.\n", "2. Vector store creation using [FAISS](https://engineering.fb.com/2017/03/29/data-infrastructure/faiss-a-library-for-efficient-similarity-search/) and OpenAI embeddings\n", "3. Retriever setup for querying the processed documents\n", "4. Creating a question and answer over the csv data.\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing\n", "\n", "1. The csv is loaded using langchain Csvloader\n", "2. The data is split into chunks.\n", "\n", "\n", "### Vector Store Creation\n", "\n", "1. OpenAI embeddings are used to create vector representations of the text chunks.\n", "2. A FAISS vector store is created from these embeddings for efficient similarity search.\n", "\n", "### Retriever Setup\n", "\n", "1. A retriever is configured to fetch the most relevant chunks for a given query.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Scalability: Can handle large documents by processing them in chunks.\n", "2. Flexibility: Easy to adjust parameters like chunk size and number of retrieved results.\n", "3. Efficiency: Utilizes FAISS for fast similarity search in high-dimensional spaces.\n", "4. Integration with Advanced NLP: Uses OpenAI embeddings for state-of-the-art text representation.\n", "\n", "## Conclusion\n", "\n", "This simple RAG system provides a solid foundation for building more complex information retrieval and question-answering systems. By encoding document content into a searchable vector store, it enables efficient retrieval of relevant information in response to queries. This approach is particularly useful for applications requiring quick access to specific information within a csv file." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "import libries" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu langchain langchain-community langchain-openai pandas python-dotenv" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "from langchain_community.document_loaders.csv_loader import CSVLoader\n", "from pathlib import Path\n", "from langchain_openai import ChatOpenAI,OpenAIEmbeddings\n", "import os\n", "from dotenv import load_dotenv\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "\n", "llm = ChatOpenAI(model=\"gpt-3.5-turbo-0125\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# CSV File Structure and Use Case\n", "The CSV file contains dummy customer data, comprising various attributes like first name, last name, company, etc. This dataset will be utilized for a RAG use case, facilitating the creation of a customer information Q&A system." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/customers-100.csv https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/customers-100.csv\n" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
IndexCustomer IdFirst NameLast NameCompanyCityCountryPhone 1Phone 2EmailSubscription DateWebsite
01DD37Cf93aecA6DcSherylBaxterRasmussen GroupEast LeonardChile229.077.5154397.884.0519x718zunigavanessa@smith.info2020-08-24http://www.stephenson.com/
121Ef7b82A4CAAD10PrestonLozanoVega-GentryEast JimmychesterDjibouti5153435776686-620-1820x944vmata@colon.com2021-04-23http://www.hobbs.com/
236F94879bDAfE5a6RoyBerryMurillo-PerryIsabelboroughAntigua and Barbuda+1-539-402-0259(496)978-3969x58947beckycarr@hogan.com2020-03-25http://www.lawrence.com/
345Cef8BFA16c5e3cLindaOlsenDominguez, Mcmillan and DonovanBensonviewDominican Republic001-808-617-6467x12895+1-813-324-8756stanleyblackwell@benson.org2020-06-02http://www.good-lyons.com/
45053d585Ab6b3159JoannaBenderMartin, Lang and AndradeWest PriscillaSlovakia (Slovak Republic)001-234-203-0635x76146001-199-446-3860x3486colinalvarado@miles.net2021-04-17https://goodwin-ingram.com/
\n", "
" ], "text/plain": [ " Index Customer Id First Name Last Name \\\n", "0 1 DD37Cf93aecA6Dc Sheryl Baxter \n", "1 2 1Ef7b82A4CAAD10 Preston Lozano \n", "2 3 6F94879bDAfE5a6 Roy Berry \n", "3 4 5Cef8BFA16c5e3c Linda Olsen \n", "4 5 053d585Ab6b3159 Joanna Bender \n", "\n", " Company City \\\n", "0 Rasmussen Group East Leonard \n", "1 Vega-Gentry East Jimmychester \n", "2 Murillo-Perry Isabelborough \n", "3 Dominguez, Mcmillan and Donovan Bensonview \n", "4 Martin, Lang and Andrade West Priscilla \n", "\n", " Country Phone 1 Phone 2 \\\n", "0 Chile 229.077.5154 397.884.0519x718 \n", "1 Djibouti 5153435776 686-620-1820x944 \n", "2 Antigua and Barbuda +1-539-402-0259 (496)978-3969x58947 \n", "3 Dominican Republic 001-808-617-6467x12895 +1-813-324-8756 \n", "4 Slovakia (Slovak Republic) 001-234-203-0635x76146 001-199-446-3860x3486 \n", "\n", " Email Subscription Date Website \n", "0 zunigavanessa@smith.info 2020-08-24 http://www.stephenson.com/ \n", "1 vmata@colon.com 2021-04-23 http://www.hobbs.com/ \n", "2 beckycarr@hogan.com 2020-03-25 http://www.lawrence.com/ \n", "3 stanleyblackwell@benson.org 2020-06-02 http://www.good-lyons.com/ \n", "4 colinalvarado@miles.net 2021-04-17 https://goodwin-ingram.com/ " ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "\n", "file_path = ('data/customers-100.csv') # insert the path of the csv file\n", "data = pd.read_csv(file_path)\n", "\n", "#preview the csv file\n", "data.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "load and process csv data" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "loader = CSVLoader(file_path=file_path)\n", "docs = loader.load_and_split()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Initiate faiss vector store and openai embedding" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "import faiss\n", "from langchain_community.docstore.in_memory import InMemoryDocstore\n", "from langchain_community.vectorstores import FAISS\n", "\n", "embeddings = OpenAIEmbeddings()\n", "index = faiss.IndexFlatL2(len(OpenAIEmbeddings().embed_query(\" \")))\n", "vector_store = FAISS(\n", " embedding_function=OpenAIEmbeddings(),\n", " index=index,\n", " docstore=InMemoryDocstore(),\n", " index_to_docstore_id={}\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Add the splitted csv data to the vector store" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "vector_store.add_documents(documents=docs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Create the retrieval chain" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "from langchain_core.prompts import ChatPromptTemplate\n", "from langchain.chains import create_retrieval_chain\n", "from langchain.chains.combine_documents import create_stuff_documents_chain\n", "\n", "retriever = vector_store.as_retriever()\n", "\n", "# Set up system prompt\n", "system_prompt = (\n", " \"You are an assistant for question-answering tasks. \"\n", " \"Use the following pieces of retrieved context to answer \"\n", " \"the question. If you don't know the answer, say that you \"\n", " \"don't know. Use three sentences maximum and keep the \"\n", " \"answer concise.\"\n", " \"\\n\\n\"\n", " \"{context}\"\n", ")\n", "\n", "prompt = ChatPromptTemplate.from_messages([\n", " (\"system\", system_prompt),\n", " (\"human\", \"{input}\"),\n", " \n", "])\n", "\n", "# Create the question-answer chain\n", "question_answer_chain = create_stuff_documents_chain(llm, prompt)\n", "rag_chain = create_retrieval_chain(retriever, question_answer_chain)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Query the rag bot with a question based on the CSV data" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'Sheryl Baxter works for Rasmussen Group.'" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "answer= rag_chain.invoke({\"input\": \"which company does sheryl Baxter work for?\"})\n", "answer['answer']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--simple-csv-rag)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.4" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/simple_csv_rag_with_llamaindex.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Simple RAG (Retrieval-Augmented Generation) System for CSV Files\n", "\n", "## Overview\n", "\n", "This code implements a basic Retrieval-Augmented Generation (RAG) system for processing and querying CSV documents. The system encodes the document content into a vector store, which can then be queried to retrieve relevant information.\n", "\n", "# CSV File Structure and Use Case\n", "The CSV file contains dummy customer data, comprising various attributes like first name, last name, company, etc. This dataset will be utilized for a RAG use case, facilitating the creation of a customer information Q&A system.\n", "\n", "## Key Components\n", "\n", "1. Loading and spliting csv files.\n", "2. Vector store creation using [FAISS](https://engineering.fb.com/2017/03/29/data-infrastructure/faiss-a-library-for-efficient-similarity-search/) and OpenAI embeddings\n", "3. Query engine setup for querying the processed documents\n", "4. Creating a question and answer over the csv data.\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing\n", "\n", "1. The csv is loaded using LlamaIndex's [PagedCSVReader](https://docs.llamaindex.ai/en/stable/api_reference/readers/file/#llama_index.readers.file.PagedCSVReader)\n", "2. This reader converts each row into a LlamaIndex Document along with the respective column names of the table. No further splitting applied.\n", "\n", "\n", "### Vector Store Creation\n", "\n", "1. OpenAI embeddings are used to create vector representations of the text chunks.\n", "2. A FAISS vector store is created from these embeddings for efficient similarity search.\n", "\n", "### Query Engine Setup\n", "\n", "1. A query engine is configured to fetch the most relevant chunks for a given query then answer the question.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Scalability: Can handle large documents by processing them in chunks.\n", "2. Flexibility: Easy to adjust parameters like chunk size and number of retrieved results.\n", "3. Efficiency: Utilizes FAISS for fast similarity search in high-dimensional spaces.\n", "4. Integration with Advanced NLP: Uses OpenAI embeddings for state-of-the-art text representation.\n", "\n", "## Conclusion\n", "\n", "This simple RAG system provides a solid foundation for building more complex information retrieval and question-answering systems. By encoding document content into a searchable vector store, it enables efficient retrieval of relevant information in response to queries. This approach is particularly useful for applications requiring quick access to specific information within a CSV file." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu llama-index pandas python-dotenv" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from llama_index.core.readers import SimpleDirectoryReader\n", "from llama_index.core import Settings\n", "from llama_index.llms.openai import OpenAI\n", "from llama_index.embeddings.openai import OpenAIEmbedding\n", "from llama_index.readers.file import PagedCSVReader\n", "from llama_index.vector_stores.faiss import FaissVectorStore\n", "from llama_index.core.ingestion import IngestionPipeline\n", "from llama_index.core import VectorStoreIndex\n", "import faiss\n", "import os\n", "import pandas as pd\n", "from dotenv import load_dotenv\n", "\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "\n", "\n", "# Llamaindex global settings for llm and embeddings\n", "EMBED_DIMENSION=512\n", "Settings.llm = OpenAI(model=\"gpt-3.5-turbo\")\n", "Settings.embed_model = OpenAIEmbedding(model=\"text-embedding-3-small\", dimensions=EMBED_DIMENSION)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### CSV File Structure and Use Case\n", "The CSV file contains dummy customer data, comprising various attributes like first name, last name, company, etc. This dataset will be utilized for a RAG use case, facilitating the creation of a customer information Q&A system." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/customers-100.csv https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/customers-100.csv\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "file_path = ('data/customers-100.csv') # insert the path of the csv file\n", "data = pd.read_csv(file_path)\n", "\n", "# Preview the csv file\n", "data.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Vector Store" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# Create FaisVectorStore to store embeddings\n", "fais_index = faiss.IndexFlatL2(EMBED_DIMENSION)\n", "vector_store = FaissVectorStore(faiss_index=fais_index)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Load and Process CSV Data as Document" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "csv_reader = PagedCSVReader()\n", "\n", "reader = SimpleDirectoryReader( \n", " input_files=[file_path],\n", " file_extractor= {\".csv\": csv_reader}\n", " )\n", "\n", "docs = reader.load_data()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Index: 1\n", "Customer Id: DD37Cf93aecA6Dc\n", "First Name: Sheryl\n", "Last Name: Baxter\n", "Company: Rasmussen Group\n", "City: East Leonard\n", "Country: Chile\n", "Phone 1: 229.077.5154\n", "Phone 2: 397.884.0519x718\n", "Email: zunigavanessa@smith.info\n", "Subscription Date: 2020-08-24\n", "Website: http://www.stephenson.com/\n" ] } ], "source": [ "# Check a sample chunk\n", "print(docs[0].text)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Ingestion Pipeline" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "pipeline = IngestionPipeline(\n", " vector_store=vector_store,\n", " documents=docs\n", ")\n", "\n", "nodes = pipeline.run()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create Query Engine" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "vector_store_index = VectorStoreIndex(nodes)\n", "query_engine = vector_store_index.as_query_engine(similarity_top_k=2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Query the rag bot with a question based on the CSV data" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'Rasmussen Group'" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "response = query_engine.query(\"which company does sheryl Baxter work for?\")\n", "response.response" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--simple-csv-rag-with-llamaindex)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.5" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: all_rag_techniques/simple_rag.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": { "id": "eKPK-_pj-BE3" }, "source": [ "# Simple RAG (Retrieval-Augmented Generation) System\n", "\n", "## Overview\n", "\n", "This code implements a basic Retrieval-Augmented Generation (RAG) system for processing and querying PDF documents. The system encodes the document content into a vector store, which can then be queried to retrieve relevant information.\n", "\n", "## Key Components\n", "\n", "1. PDF processing and text extraction\n", "2. Text chunking for manageable processing\n", "3. Vector store creation using [FAISS](https://engineering.fb.com/2017/03/29/data-infrastructure/faiss-a-library-for-efficient-similarity-search/) and OpenAI embeddings\n", "4. Retriever setup for querying the processed documents\n", "5. Evaluation of the RAG system\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing\n", "\n", "1. The PDF is loaded using PyPDFLoader.\n", "2. The text is split into chunks using RecursiveCharacterTextSplitter with specified chunk size and overlap.\n", "\n", "### Text Cleaning\n", "\n", "A custom function `replace_t_with_space` is applied to clean the text chunks. This likely addresses specific formatting issues in the PDF.\n", "\n", "### Vector Store Creation\n", "\n", "1. OpenAI embeddings are used to create vector representations of the text chunks.\n", "2. A FAISS vector store is created from these embeddings for efficient similarity search.\n", "\n", "### Retriever Setup\n", "\n", "1. A retriever is configured to fetch the top 2 most relevant chunks for a given query.\n", "\n", "### Encoding Function\n", "\n", "The `encode_pdf` function encapsulates the entire process of loading, chunking, cleaning, and encoding the PDF into a vector store.\n", "\n", "## Key Features\n", "\n", "1. Modular Design: The encoding process is encapsulated in a single function for easy reuse.\n", "2. Configurable Chunking: Allows adjustment of chunk size and overlap.\n", "3. Efficient Retrieval: Uses FAISS for fast similarity search.\n", "4. Evaluation: Includes a function to evaluate the RAG system's performance.\n", "\n", "## Usage Example\n", "\n", "The code includes a test query: \"What is the main cause of climate change?\". This demonstrates how to use the retriever to fetch relevant context from the processed document.\n", "\n", "## Evaluation\n", "\n", "The system includes an `evaluate_rag` function to assess the performance of the retriever, though the specific metrics used are not detailed in the provided code.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Scalability: Can handle large documents by processing them in chunks.\n", "2. Flexibility: Easy to adjust parameters like chunk size and number of retrieved results.\n", "3. Efficiency: Utilizes FAISS for fast similarity search in high-dimensional spaces.\n", "4. Integration with Advanced NLP: Uses OpenAI embeddings for state-of-the-art text representation.\n", "\n", "## Conclusion\n", "\n", "This simple RAG system provides a solid foundation for building more complex information retrieval and question-answering systems. By encoding document content into a searchable vector store, it enables efficient retrieval of relevant information in response to queries. This approach is particularly useful for applications requiring quick access to specific information within large documents or document collections." ] }, { "cell_type": "markdown", "metadata": { "id": "XvUHveE5-BE3" }, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "xVaHWFwh-BE4", "outputId": "d725de55-3b6e-45ad-a599-ca0f4e7d1698" }, "outputs": [], "source": [ "# Install required packages\n", "!pip install pypdf==5.6.0\n", "!pip install PyMuPDF==1.26.1\n", "!pip install python-dotenv==1.1.0\n", "!pip install langchain-community==0.3.25\n", "!pip install langchain_openai==0.3.23\n", "!pip install rank_bm25==0.2.2\n", "!pip install faiss-cpu==1.11.0\n", "!pip install deepeval==3.1.0" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "GGVwzS4v-BE5", "outputId": "e5a4d759-3a78-4b76-9670-0375c78757be" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cloning into 'RAG_TECHNIQUES'...\n", "remote: Enumerating objects: 1531, done.\u001b[K\n", "remote: Counting objects: 100% (808/808), done.\u001b[K\n", "remote: Compressing objects: 100% (359/359), done.\u001b[K\n", "remote: Total 1531 (delta 549), reused 458 (delta 449), pack-reused 723 (from 2)\u001b[K\n", "Receiving objects: 100% (1531/1531), 34.20 MiB | 25.58 MiB/s, done.\n", "Resolving deltas: 100% (962/962), done.\n" ] } ], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "ha6ASRqq-BE5", "outputId": "04acf50b-926e-4ff8-a5a3-6ecf11f74dd2" }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ ":26: LangChainDeprecationWarning: As of langchain-core 0.3.0, LangChain uses pydantic v2 internally. The langchain_core.pydantic_v1 module was a compatibility shim for pydantic v1, and should no longer be used. Please update the code to import from Pydantic directly.\n", "\n", "For example, replace imports like: `from langchain_core.pydantic_v1 import BaseModel`\n", "with: `from pydantic import BaseModel`\n", "or the v1 compatibility namespace if you are working in a code base that has not been fully upgraded to pydantic 2 yet. \tfrom pydantic.v1 import BaseModel\n", "\n", " from helper_functions import (EmbeddingProvider,\n" ] } ], "source": [ "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "from google.colab import userdata\n", "\n", "\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable (comment out if not using OpenAI)\n", "if not userdata.get('OPENAI_API_KEY'):\n", " os.environ[\"OPENAI_API_KEY\"] = input(\"Please enter your OpenAI API key: \")\n", "else:\n", " os.environ[\"OPENAI_API_KEY\"] = userdata.get('OPENAI_API_KEY')\n", "\n", "# Original path append replaced for Colab compatibility\n", "\n", "from langchain.document_loaders import PyPDFLoader\n", "from langchain.text_splitter import RecursiveCharacterTextSplitter\n", "from helper_functions import (EmbeddingProvider,\n", " retrieve_context_per_question,\n", " replace_t_with_space,\n", " get_langchain_embedding_provider,\n", " show_context)\n", "\n", "from evaluation.evalute_rag import evaluate_rag\n", "\n", "from langchain.vectorstores import FAISS\n" ] }, { "cell_type": "markdown", "metadata": { "id": "HVWdzMuw-BE5" }, "source": [ "### Read Docs" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "AagmKvC0-BE6", "outputId": "889d0df0-57b3-4e31-a3d5-7ab52ed33892" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--2025-06-14 07:31:48-- https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.108.133, 185.199.109.133, 185.199.110.133, ...\n", "Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.108.133|:443... connected.\n", "HTTP request sent, awaiting response... 200 OK\n", "Length: 206372 (202K) [application/octet-stream]\n", "Saving to: ‘data/Understanding_Climate_Change.pdf’\n", "\n", "\r data/Unde 0%[ ] 0 --.-KB/s \rdata/Understanding_ 100%[===================>] 201.54K --.-KB/s in 0.03s \n", "\n", "2025-06-14 07:31:48 (5.89 MB/s) - ‘data/Understanding_Climate_Change.pdf’ saved [206372/206372]\n", "\n", "--2025-06-14 07:31:48-- https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.109.133, 185.199.111.133, 185.199.108.133, ...\n", "Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.109.133|:443... connected.\n", "HTTP request sent, awaiting response... 200 OK\n", "Length: 206372 (202K) [application/octet-stream]\n", "Saving to: ‘data/Understanding_Climate_Change.pdf’\n", "\n", "data/Understanding_ 100%[===================>] 201.54K --.-KB/s in 0.03s \n", "\n", "2025-06-14 07:31:48 (5.77 MB/s) - ‘data/Understanding_Climate_Change.pdf’ saved [206372/206372]\n", "\n" ] } ], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "id": "KF5O4Wk4-BE6" }, "outputs": [], "source": [ "path = \"data/Understanding_Climate_Change.pdf\"" ] }, { "cell_type": "markdown", "metadata": { "id": "P0MAcEpU-BE6" }, "source": [ "### Encode document" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "id": "38suL-tJ-BE7" }, "outputs": [], "source": [ "def encode_pdf(path, chunk_size=1000, chunk_overlap=200):\n", " \"\"\"\n", " Encodes a PDF book into a vector store using OpenAI embeddings.\n", "\n", " Args:\n", " path: The path to the PDF file.\n", " chunk_size: The desired size of each text chunk.\n", " chunk_overlap: The amount of overlap between consecutive chunks.\n", "\n", " Returns:\n", " A FAISS vector store containing the encoded book content.\n", " \"\"\"\n", "\n", " # Load PDF documents\n", " loader = PyPDFLoader(path)\n", " documents = loader.load()\n", "\n", " # Split documents into chunks\n", " text_splitter = RecursiveCharacterTextSplitter(\n", " chunk_size=chunk_size, chunk_overlap=chunk_overlap, length_function=len\n", " )\n", " texts = text_splitter.split_documents(documents)\n", " cleaned_texts = replace_t_with_space(texts)\n", "\n", " # Create embeddings (Tested with OpenAI and Amazon Bedrock)\n", " embeddings = get_langchain_embedding_provider(EmbeddingProvider.OPENAI)\n", " #embeddings = get_langchain_embedding_provider(EmbeddingProvider.AMAZON_BEDROCK)\n", "\n", " # Create vector store\n", " vectorstore = FAISS.from_documents(cleaned_texts, embeddings)\n", "\n", " return vectorstore" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "id": "8aysEXUh-BE7" }, "outputs": [], "source": [ "chunks_vector_store = encode_pdf(path, chunk_size=1000, chunk_overlap=200)" ] }, { "cell_type": "markdown", "metadata": { "id": "YaCrjGRA-BE7" }, "source": [ "### Create retriever" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "id": "wgVN3-y1-BE7" }, "outputs": [], "source": [ "chunks_query_retriever = chunks_vector_store.as_retriever(search_kwargs={\"k\": 2})" ] }, { "cell_type": "markdown", "metadata": { "id": "jQJUmIXS-BE7" }, "source": [ "### Test retriever" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "sC9jmnHM-BE7", "outputId": "463219f6-d06c-4031-d348-f89a66ea15c0" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Context 1:\n", "Chapter 2: Causes of Climate Change \n", "Greenhouse Gases \n", "The primary cause of recent climate change is the increase in greenhouse gases in the \n", "atmosphere. Greenhouse gases, such as carbon dioxide (CO2), methane (CH4), and nitrous \n", "oxide (N2O), trap heat from the sun, creating a \"greenhouse effect.\" This effect is essential \n", "for life on Earth, as it keeps the planet warm enough to support life. However, human \n", "activities have intensified this natural process, leading to a warmer climate. \n", "Fossil Fuels \n", "Burning fossil fuels for energy releases large amounts of CO2. This includes coal, oil, and \n", "natural gas used for electricity, heating, and transportation. The industrial revolution marked \n", "the beginning of a significant increase in fossil fuel consumption, which continues to rise \n", "today. \n", "Coal\n", "\n", "\n", "Context 2:\n", "Most of these climate changes are attributed to very small variations in Earth's orbit that \n", "change the amount of solar energy our planet receives. During the Holocene epoch, which \n", "began at the end of the last ice age, human societies flourished, but the industrial era has seen \n", "unprecedented changes. \n", "Modern Observations \n", "Modern scientific observations indicate a rapid increase in global temperatures, sea levels, \n", "and extreme weather events. The Intergovernmental Panel on Climate Change (IPCC) has \n", "documented these changes extensively. Ice core samples, tree rings, and ocean sediments \n", "provide a historical record that scientists use to understand past climate conditions and \n", "predict future trends. The evidence overwhelmingly shows that recent changes are primarily \n", "driven by human activities, particularly the emission of greenhouse gases. \n", "Chapter 2: Causes of Climate Change \n", "Greenhouse Gases \n", "The primary cause of recent climate change is the increase in greenhouse gases in the\n", "\n", "\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/content/RAG_TECHNIQUES/helper_functions.py:143: LangChainDeprecationWarning: The method `BaseRetriever.get_relevant_documents` was deprecated in langchain-core 0.1.46 and will be removed in 1.0. Use :meth:`~invoke` instead.\n", " docs = chunks_query_retriever.get_relevant_documents(question)\n" ] } ], "source": [ "test_query = \"What is the main cause of climate change?\"\n", "context = retrieve_context_per_question(test_query, chunks_query_retriever)\n", "show_context(context)" ] }, { "cell_type": "markdown", "metadata": { "id": "MbrMQXnX-BE8" }, "source": [ "### Evaluate results" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "-Cjmro4s-BE8", "outputId": "45d0a93a-6313-4cdf-a30f-cf7ca9525f0e" }, "outputs": [ { "data": { "text/plain": [ "{'questions': ['1. **Multiple Choice: Causes of Climate Change**',\n", " ' - What is the primary cause of the current climate change trend?',\n", " ' A) Solar radiation variations',\n", " ' B) Natural cycles of the Earth',\n", " ' C) Human activities, such as burning fossil fuels',\n", " ' D) Volcanic eruptions',\n", " '',\n", " '2. **True or False: Climate Change Impacts**',\n", " ' - True or False: Climate change only affects the temperature of the planet, not weather patterns, sea levels, or ecosystems.',\n", " '',\n", " '3. **Short Answer: Mitigation Strategies**',\n", " ' - Describe two effective strategies that could be implemented to mitigate the effects of climate change.',\n", " '',\n", " '4. **Matching: Climate Change Terminology**',\n", " ' - Match the following terms with their correct definitions:',\n", " ' A) Greenhouse Gases',\n", " ' B) Carbon Footprint',\n", " ' C) Renewable Energy',\n", " ' D) Adaptation',\n", " ' - Definitions:',\n", " ' 1. The total amount of greenhouse gases produced to directly and indirectly support human activities, usually expressed in equivalent tons of carbon dioxide (CO2).',\n", " \" 2. Gases in Earth's atmosphere that trap heat, such as CO2, methane, and nitrous oxide.\",\n", " ' 3. Adjusting practices, processes, and capital in response to the risks posed by climate change.',\n", " ' 4. Energy from sources that are not depleted when used, such as wind or solar power.',\n", " '',\n", " '5. **Essay: International Cooperation**',\n", " ' - Discuss the importance of international cooperation in combating climate change. Include examples of international agreements or policies that have been implemented to address the issue.'],\n", " 'results': ['```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 5,\\n \"Conciseness\": 4\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 2,\\n \"Completeness\": 1,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 3,\\n \"Completeness\": 2,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 1,\\n \"Completeness\": 1,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 1,\\n \"Completeness\": 1,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 5,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 1,\\n \"Completeness\": 1,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 2,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 1,\\n \"Completeness\": 1,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 2,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 3,\\n \"Completeness\": 2,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 1,\\n \"Completeness\": 1,\\n \"Conciseness\": 2\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 5,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 1,\\n \"Completeness\": 1,\\n \"Conciseness\": 3\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 5,\\n \"Completeness\": 4,\\n \"Conciseness\": 4\\n}\\n```',\n", " '```json\\n{\\n \"Relevance\": 4,\\n \"Completeness\": 3,\\n \"Conciseness\": 4\\n}\\n```'],\n", " 'average_scores': None}" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#Note - this currently works with OPENAI only\n", "evaluate_rag(chunks_query_retriever)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "77cFwBpjVMWP" }, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--simple-rag)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [] } ], "metadata": { "colab": { "provenance": [] }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 0 } ================================================ FILE: all_rag_techniques/simple_rag_with_llamaindex.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Simple RAG (Retrieval-Augmented Generation) System\n", "\n", "## Overview\n", "\n", "This code implements a basic Retrieval-Augmented Generation (RAG) system for processing and querying PDF document(s). The system uses a pipeline that encodes the documents and creates nodes. These nodes then can be used to build a vector index to retrieve relevant information.\n", "\n", "## Key Components\n", "\n", "1. PDF processing and text extraction\n", "2. Text chunking for manageable processing\n", "3. Ingestion pipeline creation using FAISS as vector store and OpenAI embeddings\n", "4. Retriever setup for querying the processed documents\n", "5. Evaluation of the RAG system\n", "\n", "## Method Details\n", "\n", "### Document Preprocessing\n", "\n", "1. The PDF is loaded using [SimpleDirectoryReader](https://docs.llamaindex.ai/en/stable/module_guides/loading/simpledirectoryreader/).\n", "2. The text is split into [nodes/chunks](https://docs.llamaindex.ai/en/stable/module_guides/loading/documents_and_nodes/) using [SentenceSplitter](https://docs.llamaindex.ai/en/stable/module_guides/loading/node_parsers/modules/#sentencesplitter) with specified chunk size and overlap.\n", "\n", "### Text Cleaning\n", "\n", "A custom transformation `TextCleaner` is applied to clean the texts. This likely addresses specific formatting issues in the PDF.\n", "\n", "### Ingestion Pipeline Creation\n", "\n", "1. OpenAI embeddings are used to create vector representations of the text nodes.\n", "2. A FAISS vector store is created from these embeddings for efficient similarity search.\n", "\n", "### Retriever Setup\n", "\n", "1. A retriever is configured to fetch the top 2 most relevant chunks for a given query.\n", "\n", "\n", "## Key Features\n", "\n", "1. Modular Design: The ingestion process is encapsulated in a single function for easy reuse.\n", "2. Configurable Chunking: Allows adjustment of chunk size and overlap.\n", "3. Efficient Retrieval: Uses FAISS for fast similarity search.\n", "4. Evaluation: Includes a function to evaluate the RAG system's performance.\n", "\n", "## Usage Example\n", "\n", "The code includes a test query: \"What is the main cause of climate change?\". This demonstrates how to use the retriever to fetch relevant context from the processed document.\n", "\n", "## Evaluation\n", "\n", "The system includes an `evaluate_rag` function to assess the performance of the retriever, though the specific metrics used are not detailed in the provided code.\n", "\n", "## Benefits of this Approach\n", "\n", "1. Scalability: Can handle large documents by processing them in chunks.\n", "2. Flexibility: Easy to adjust parameters like chunk size and number of retrieved results.\n", "3. Efficiency: Utilizes FAISS for fast similarity search in high-dimensional spaces.\n", "4. Integration with Advanced NLP: Uses OpenAI embeddings for state-of-the-art text representation.\n", "\n", "## Conclusion\n", "\n", "This simple RAG system provides a solid foundation for building more complex information retrieval and question-answering systems. By encoding document content into a searchable vector store, it enables efficient retrieval of relevant information in response to queries. This approach is particularly useful for applications requiring quick access to specific information within large documents or document collections." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Package Installation and Imports\n", "\n", "The cell below installs all necessary packages required to run this notebook.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Install required packages\n", "!pip install faiss-cpu llama-index python-dotenv" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Clone the repository to access helper functions and evaluation modules\n", "!git clone https://github.com/NirDiamant/RAG_TECHNIQUES.git\n", "import sys\n", "sys.path.append('RAG_TECHNIQUES')\n", "# If you need to run with the latest data\n", "# !cp -r RAG_TECHNIQUES/data ." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from typing import List\n", "from llama_index.core import SimpleDirectoryReader, VectorStoreIndex\n", "from llama_index.core.ingestion import IngestionPipeline\n", "from llama_index.core.schema import BaseNode, TransformComponent\n", "from llama_index.vector_stores.faiss import FaissVectorStore\n", "from llama_index.core.text_splitter import SentenceSplitter\n", "from llama_index.embeddings.openai import OpenAIEmbedding\n", "from llama_index.core import Settings\n", "import faiss\n", "import os\n", "import sys\n", "from dotenv import load_dotenv\n", "\n", "# Original path append replaced for Colab compatibility\n", "\n", "EMBED_DIMENSION = 512\n", "\n", "# Chunk settings are way different than langchain examples\n", "# Beacuse for the chunk length langchain uses length of the string,\n", "# while llamaindex uses length of the tokens\n", "CHUNK_SIZE = 200\n", "CHUNK_OVERLAP = 50\n", "\n", "# Load environment variables from a .env file\n", "load_dotenv()\n", "\n", "# Set the OpenAI API key environment variable\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n", "\n", "# Set embeddig model on LlamaIndex global settings\n", "Settings.embed_model = OpenAIEmbedding(model=\"text-embedding-3-small\", dimensions=EMBED_DIMENSION)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Read Docs" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Download required data files\n", "import os\n", "os.makedirs('data', exist_ok=True)\n", "\n", "# Download the PDF document used in this notebook\n", "!wget -O data/Understanding_Climate_Change.pdf https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/Understanding_Climate_Change.pdf\n", "!wget -O data/q_a.json https://raw.githubusercontent.com/NirDiamant/RAG_TECHNIQUES/main/data/q_a.json\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "path = \"data/\"\n", "node_parser = SimpleDirectoryReader(input_dir=path, required_exts=['.pdf'])\n", "documents = node_parser.load_data()\n", "print(documents[0])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Vector Store" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# Create FaisVectorStore to store embeddings\n", "faiss_index = faiss.IndexFlatL2(EMBED_DIMENSION)\n", "vector_store = FaissVectorStore(faiss_index=faiss_index)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Text Cleaner Transformation" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "class TextCleaner(TransformComponent):\n", " \"\"\"\n", " Transformation to be used within the ingestion pipeline.\n", " Cleans clutters from texts.\n", " \"\"\"\n", " def __call__(self, nodes, **kwargs) -> List[BaseNode]:\n", " \n", " for node in nodes:\n", " node.text = node.text.replace('\\t', ' ') # Replace tabs with spaces\n", " node.text = node.text.replace(' \\n', ' ') # Replace paragraph seperator with spacaes\n", " \n", " return nodes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Ingestion Pipeline" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "text_splitter = SentenceSplitter(chunk_size=CHUNK_SIZE, chunk_overlap=CHUNK_OVERLAP)\n", "\n", "# Create a pipeline with defined document transformations and vectorstore\n", "pipeline = IngestionPipeline(\n", " transformations=[\n", " TextCleaner(),\n", " text_splitter,\n", " ],\n", " vector_store=vector_store, \n", ")" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "# Run pipeline and get generated nodes from the process\n", "nodes = pipeline.run(documents=documents)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create retriever" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "vector_store_index = VectorStoreIndex(nodes)\n", "retriever = vector_store_index.as_retriever(similarity_top_k=2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Test retriever" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "def show_context(context):\n", " \"\"\"\n", " Display the contents of the provided context list.\n", "\n", " Args:\n", " context (list): A list of context items to be displayed.\n", "\n", " Prints each context item in the list with a heading indicating its position.\n", " \"\"\"\n", " for i, c in enumerate(context):\n", " print(f\"Context {i+1}:\")\n", " print(c.text)\n", " print(\"\\n\")" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Context 1:\n", "Chapter 2: Causes of Climate Change Greenhouse Gases The primary cause of recent climate change is the increase in greenhouse gases in the atmosphere. Greenhouse gases, such as carbon dioxide (CO2), methane (CH4), and nitrous oxide (N2O), trap heat from the sun, creating a \"greenhouse effect.\" This effect is essential for life on Earth, as it keeps the planet warm enough to support life. However, human activities have intensified this natural process, leading to a warmer climate. Fossil Fuels Burning fossil fuels for energy releases large amounts of CO2.\n", "\n", "\n", "Context 2:\n", "The Intergovernmental Panel on Climate Change (IPCC) has documented these changes extensively. Ice core samples, tree rings, and ocean sediments provide a historical record that scientists use to understand past climate conditions and predict future trends. The evidence overwhelmingly shows that recent changes are primarily driven by human activities, particularly the emission of greenhou se gases. Chapter 2: Causes of Climate Change Greenhouse Gases The primary cause of recent climate change is the increase in greenhouse gases in the atmosphere.\n", "\n", "\n" ] } ], "source": [ "test_query = \"What is the main cause of climate change?\"\n", "context = retriever.retrieve(test_query)\n", "show_context(context)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Let's see how well does it perform:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import json\n", "from deepeval import evaluate\n", "from deepeval.metrics import GEval, FaithfulnessMetric, ContextualRelevancyMetric\n", "from deepeval.test_case import LLMTestCaseParams\n", "from evaluation.evalute_rag import create_deep_eval_test_cases\n", "\n", "# Set llm model for evaluation of the question and answers \n", "LLM_MODEL = \"gpt-4o\"\n", "\n", "# Define evaluation metrics\n", "correctness_metric = GEval(\n", " name=\"Correctness\",\n", " model=LLM_MODEL,\n", " evaluation_params=[\n", " LLMTestCaseParams.EXPECTED_OUTPUT,\n", " LLMTestCaseParams.ACTUAL_OUTPUT\n", " ],\n", " evaluation_steps=[\n", " \"Determine whether the actual output is factually correct based on the expected output.\"\n", " ],\n", ")\n", "\n", "faithfulness_metric = FaithfulnessMetric(\n", " threshold=0.7,\n", " model=LLM_MODEL,\n", " include_reason=False\n", ")\n", "\n", "relevance_metric = ContextualRelevancyMetric(\n", " threshold=1,\n", " model=LLM_MODEL,\n", " include_reason=True\n", ")\n", "\n", "def evaluate_rag(query_engine, num_questions: int = 5) -> None:\n", " \"\"\"\n", " Evaluate the RAG system using predefined metrics.\n", "\n", " Args:\n", " query_engine: Query engine to ask questions and get answers along with retrieved context.\n", " num_questions (int): Number of questions to evaluate (default: 5).\n", " \"\"\"\n", " \n", " \n", " # Load questions and answers from JSON file\n", " q_a_file_name = \"data/q_a.json\"\n", " with open(q_a_file_name, \"r\", encoding=\"utf-8\") as json_file:\n", " q_a = json.load(json_file)\n", "\n", " questions = [qa[\"question\"] for qa in q_a][:num_questions]\n", " ground_truth_answers = [qa[\"answer\"] for qa in q_a][:num_questions]\n", " generated_answers = []\n", " retrieved_documents = []\n", "\n", " # Generate answers and retrieve documents for each question\n", " for question in questions:\n", " response = query_engine.query(question)\n", " context = [doc.text for doc in response.source_nodes]\n", " retrieved_documents.append(context)\n", " generated_answers.append(response.response)\n", "\n", " # Create test cases and evaluate\n", " test_cases = create_deep_eval_test_cases(questions, ground_truth_answers, generated_answers, retrieved_documents)\n", " evaluate(\n", " test_cases=test_cases,\n", " metrics=[correctness_metric, faithfulness_metric, relevance_metric]\n", " )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Evaluate results" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "query_engine = vector_store_index.as_query_engine(similarity_top_k=2)\n", "evaluate_rag(query_engine, num_questions=1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=all-rag-techniques--simple-rag-with-llamaindex)" ] } ], "metadata": { "colab": { "name": "", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.5" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: data/customers-100.csv ================================================ Index,Customer Id,First Name,Last Name,Company,City,Country,Phone 1,Phone 2,Email,Subscription Date,Website 1,DD37Cf93aecA6Dc,Sheryl,Baxter,Rasmussen Group,East Leonard,Chile,229.077.5154,397.884.0519x718,zunigavanessa@smith.info,2020-08-24,http://www.stephenson.com/ 2,1Ef7b82A4CAAD10,Preston,Lozano,Vega-Gentry,East Jimmychester,Djibouti,5153435776,686-620-1820x944,vmata@colon.com,2021-04-23,http://www.hobbs.com/ 3,6F94879bDAfE5a6,Roy,Berry,Murillo-Perry,Isabelborough,Antigua and Barbuda,+1-539-402-0259,(496)978-3969x58947,beckycarr@hogan.com,2020-03-25,http://www.lawrence.com/ 4,5Cef8BFA16c5e3c,Linda,Olsen,"Dominguez, Mcmillan and Donovan",Bensonview,Dominican Republic,001-808-617-6467x12895,+1-813-324-8756,stanleyblackwell@benson.org,2020-06-02,http://www.good-lyons.com/ 5,053d585Ab6b3159,Joanna,Bender,"Martin, Lang and Andrade",West Priscilla,Slovakia (Slovak Republic),001-234-203-0635x76146,001-199-446-3860x3486,colinalvarado@miles.net,2021-04-17,https://goodwin-ingram.com/ 6,2d08FB17EE273F4,Aimee,Downs,Steele Group,Chavezborough,Bosnia and Herzegovina,(283)437-3886x88321,999-728-1637,louis27@gilbert.com,2020-02-25,http://www.berger.net/ 7,EA4d384DfDbBf77,Darren,Peck,"Lester, Woodard and Mitchell",Lake Ana,Pitcairn Islands,(496)452-6181x3291,+1-247-266-0963x4995,tgates@cantrell.com,2021-08-24,https://www.le.com/ 8,0e04AFde9f225dE,Brett,Mullen,"Sanford, Davenport and Giles",Kimport,Bulgaria,001-583-352-7197x297,001-333-145-0369,asnow@colon.com,2021-04-12,https://hammond-ramsey.com/ 9,C2dE4dEEc489ae0,Sheryl,Meyers,Browning-Simon,Robersonstad,Cyprus,854-138-4911x5772,+1-448-910-2276x729,mariokhan@ryan-pope.org,2020-01-13,https://www.bullock.net/ 10,8C2811a503C7c5a,Michelle,Gallagher,Beck-Hendrix,Elaineberg,Timor-Leste,739.218.2516x459,001-054-401-0347x617,mdyer@escobar.net,2021-11-08,https://arias.com/ 11,216E205d6eBb815,Carl,Schroeder,"Oconnell, Meza and Everett",Shannonville,Guernsey,637-854-0256x825,114.336.0784x788,kirksalas@webb.com,2021-10-20,https://simmons-hurley.com/ 12,CEDec94deE6d69B,Jenna,Dodson,"Hoffman, Reed and Mcclain",East Andrea,Vietnam,(041)737-3846,+1-556-888-3485x42608,mark42@robbins.com,2020-11-29,http://www.douglas.net/ 13,e35426EbDEceaFF,Tracey,Mata,Graham-Francis,South Joannamouth,Togo,001-949-844-8787,(855)713-8773,alex56@walls.org,2021-12-02,http://www.beck.com/ 14,A08A8aF8BE9FaD4,Kristine,Cox,Carpenter-Cook,Jodyberg,Sri Lanka,786-284-3358x62152,+1-315-627-1796x8074,holdenmiranda@clarke.com,2021-02-08,https://www.brandt.com/ 15,6fEaA1b7cab7B6C,Faith,Lutz,Carter-Hancock,Burchbury,Singapore,(781)861-7180x8306,207-185-3665,cassieparrish@blevins-chapman.net,2022-01-26,http://stevenson.org/ 16,8cad0b4CBceaeec,Miranda,Beasley,Singleton and Sons,Desireeshire,Oman,540.085.3135x185,+1-600-462-6432x21881,vduncan@parks-hardy.com,2022-04-12,http://acosta.org/ 17,a5DC21AE3a21eaA,Caroline,Foley,Winters-Mendoza,West Adriennestad,Western Sahara,936.222.4746x9924,001-469-948-6341x359,holtgwendolyn@watson-davenport.com,2021-03-10,http://www.benson-roth.com/ 18,F8Aa9d6DfcBeeF8,Greg,Mata,Valentine LLC,Lake Leslie,Mozambique,(701)087-2415,(195)156-1861x26241,jaredjuarez@carroll.org,2022-03-26,http://pitts-cherry.com/ 19,F160f5Db3EfE973,Clifford,Jacobson,Simon LLC,Harmonview,South Georgia and the South Sandwich Islands,001-151-330-3524x0469,(748)477-7174,joseph26@jacobson.com,2020-09-24,https://mcconnell.com/ 20,0F60FF3DdCd7aB0,Joanna,Kirk,Mays-Mccormick,Jamesshire,French Polynesia,(266)131-7001x711,(283)312-5579x11543,tuckerangie@salazar.net,2021-09-24,https://www.camacho.net/ 21,9F9AdB7B8A6f7F2,Maxwell,Frye,Patterson Inc,East Carly,Malta,423.262.3059,202-880-0688x7491,fgibson@drake-webb.com,2022-01-12,http://www.roberts.com/ 22,FBd0Ded4F02a742,Kiara,Houston,"Manning, Hester and Arroyo",South Alvin,Netherlands,001-274-040-3582x10611,+1-528-175-0973x4684,blanchardbob@wallace-shannon.com,2020-09-15,https://www.reid-potts.com/ 23,2FB0FAA1d429421,Colleen,Howard,Greer and Sons,Brittanyview,Paraguay,1935085151,(947)115-7711x5488,rsingleton@ryan-cherry.com,2020-08-19,http://paul.biz/ 24,010468dAA11382c,Janet,Valenzuela,Watts-Donaldson,Veronicamouth,Lao People's Democratic Republic,354.259.5062x7538,500.433.2022,stefanie71@spence.com,2020-09-08,https://moreno.biz/ 25,eC1927Ca84E033e,Shane,Wilcox,Tucker LLC,Bryanville,Albania,(429)005-9030x11004,541-116-4501,mariah88@santos.com,2021-04-06,https://www.ramos.com/ 26,09D7D7C8Fe09aea,Marcus,Moody,Giles Ltd,Kaitlyntown,Panama,674-677-8623,909-277-5485x566,donnamullins@norris-barrett.org,2022-05-24,https://www.curry.com/ 27,aBdfcF2c50b0bfD,Dakota,Poole,Simmons Group,Michealshire,Belarus,(371)987-8576x4720,071-152-1376,stacey67@fields.org,2022-02-20,https://sanford-wilcox.biz/ 28,b92EBfdF8a3f0E6,Frederick,Harper,"Hinton, Chaney and Stokes",South Marissatown,Switzerland,+1-077-121-1558x0687,264.742.7149,jacobkhan@bright.biz,2022-05-26,https://callahan.org/ 29,3B5dAAFA41AFa22,Stefanie,Fitzpatrick,Santana-Duran,Acevedoville,Saint Vincent and the Grenadines,(752)776-3286,+1-472-021-4814x85074,wterrell@clark.com,2020-07-30,https://meyers.com/ 30,EDA69ca7a6e96a2,Kent,Bradshaw,Sawyer PLC,North Harold,Tanzania,+1-472-143-5037x884,126.922.6153,qjimenez@boyd.com,2020-04-26,http://maynard-ho.com/ 31,64DCcDFaB9DFd4e,Jack,Tate,"Acosta, Petersen and Morrow",West Samuel,Zimbabwe,965-108-4406x20714,046.906.1442x6784,gfigueroa@boone-zavala.com,2021-09-15,http://www.hawkins-ramsey.com/ 32,679c6c83DD872d6,Tom,Trujillo,Mcgee Group,Cunninghamborough,Denmark,416-338-3758,(775)890-7209,tapiagreg@beard.info,2022-01-13,http://www.daniels-klein.com/ 33,7Ce381e4Afa4ba9,Gabriel,Mejia,Adkins-Salinas,Port Annatown,Liechtenstein,4077245425,646.044.0696x66800,coleolson@jennings.net,2021-04-24,https://patel-hanson.info/ 34,A09AEc6E3bF70eE,Kaitlyn,Santana,Herrera Group,New Kaitlyn,United States of America,6303643286,447-710-6202x07313,georgeross@miles.org,2021-09-21,http://pham.com/ 35,aA9BAFfBc3710fe,Faith,Moon,"Waters, Chase and Aguilar",West Marthaburgh,Bahamas,+1-586-217-0359x6317,+1-818-199-1403,willistonya@randolph-baker.com,2021-11-03,https://spencer-charles.info/ 36,E11dfb2DB8C9f72,Tammie,Haley,"Palmer, Barnes and Houston",East Teresa,Belize,001-276-734-4113x6087,(430)300-8770,harrisisaiah@jenkins.com,2022-01-04,http://evans-simon.com/ 37,889eCf90f68c5Da,Nicholas,Sosa,Jordan Ltd,South Hunter,Uruguay,(661)425-6042,975-998-1519,fwolfe@dorsey.com,2021-08-10,https://www.fleming-richards.com/ 38,7a1Ee69F4fF4B4D,Jordan,Gay,Glover and Sons,South Walter,Solomon Islands,7208417020,8035336772,tiffanydavies@harris-mcfarland.org,2021-02-24,http://www.lee.org/ 39,dca4f1D0A0fc5c9,Bruce,Esparza,Huerta-Mclean,Poolefurt,Montenegro,559-529-4424,001-625-000-7132x0367,preese@frye-vega.com,2021-10-22,http://www.farley.org/ 40,17aD8e2dB3df03D,Sherry,Garza,Anderson Ltd,West John,Poland,001-067-713-6440x158,(978)289-8785x5766,ann48@miller.com,2021-11-01,http://spence.com/ 41,2f79Cd309624Abb,Natalie,Gentry,Monroe PLC,West Darius,Dominican Republic,830.996.8238,499.122.5415,tcummings@fitzpatrick-ashley.com,2020-10-10,http://www.dorsey.biz/ 42,6e5ad5a5e2bB5Ca,Bryan,Dunn,Kaufman and Sons,North Jimstad,Burkina Faso,001-710-802-5565,078.699.8982x13881,woodwardandres@phelps.com,2021-09-08,http://www.butler.com/ 43,7E441b6B228DBcA,Wayne,Simpson,Perkins-Trevino,East Rebekahborough,Bolivia,(344)156-8632x1869,463-445-3702x38463,barbarapittman@holder.com,2020-12-13,https://gillespie-holder.com/ 44,D3fC11A9C235Dc6,Luis,Greer,Cross PLC,North Drew,Bulgaria,001-336-025-6849x701,684.698.2911x6092,bstuart@williamson-mcclure.com,2022-05-15,https://fletcher-nielsen.com/ 45,30Dfa48fe5Ede78,Rhonda,Frost,"Herrera, Shepherd and Underwood",Lake Lindaburgh,Monaco,(127)081-9339,+1-431-028-3337x3492,zkrueger@wolf-chavez.net,2021-12-06,http://www.khan.com/ 46,fD780ED8dbEae7B,Joanne,Montes,"Price, Sexton and Mcdaniel",Gwendolynview,Palau,(897)726-7952,(467)886-9467x5721,juan80@henson.net,2020-07-01,http://ochoa.com/ 47,300A40d3ce24bBA,Geoffrey,Guzman,Short-Wiggins,Zimmermanland,Uzbekistan,975.235.8921x269,(983)188-6873,bauercrystal@gay.com,2020-04-23,https://decker-kline.com/ 48,283DFCD0Dba40aF,Gloria,Mccall,"Brennan, Acosta and Ramos",North Kerriton,Ghana,445-603-6729,001-395-959-4736x4524,bartlettjenna@zuniga-moss.biz,2022-03-11,http://burgess-frank.com/ 49,F4Fc91fEAEad286,Brady,Cohen,Osborne-Erickson,North Eileenville,United Arab Emirates,741.849.0139x524,+1-028-691-7497x0894,mccalltyrone@durham-rose.biz,2022-03-10,http://hammond-barron.com/ 50,80F33Fd2AcebF05,Latoya,Mccann,"Hobbs, Garrett and Sanford",Port Sergiofort,Belarus,(530)287-4548x29481,162-234-0249x32790,bobhammond@barry.biz,2021-12-02,https://www.burton.com/ 51,Aa20BDe68eAb0e9,Gerald,Hawkins,"Phelps, Forbes and Koch",New Alberttown,Canada,+1-323-239-1456x96168,(092)508-0269,uwarner@steele-arias.com,2021-03-19,https://valenzuela.com/ 52,e898eEB1B9FE22b,Samuel,Crawford,"May, Goodwin and Martin",South Jasmine,Algeria,802-242-7457,626.116.9535x8578,xpittman@ritter-carney.net,2021-03-27,https://guerrero.org/ 53,faCEF517ae7D8eB,Patricia,Goodwin,"Christian, Winters and Ellis",Cowanfort,Swaziland,322.549.7139x70040,(111)741-4173,vaughanchristy@lara.biz,2021-03-08,http://clark.info/ 54,c09952De6Cda8aA,Stacie,Richard,Byrd Inc,New Deborah,Madagascar,001-622-948-3641x24810,001-731-168-2893x8891,clinton85@colon-arias.org,2020-10-15,https://kim.com/ 55,f3BEf3Be028166f,Robin,West,"Nixon, Blackwell and Sosa",Wallstown,Ecuador,698.303.4267,001-683-837-7651x525,greenemiranda@zimmerman.com,2022-01-13,https://www.mora.com/ 56,C6F2Fc6a7948a4e,Ralph,Haas,Montes PLC,Lake Ellenchester,Palestinian Territory,2239271999,001-962-434-0867x649,goodmancesar@figueroa.biz,2020-05-25,http://may.com/ 57,c8FE57cBBdCDcb2,Phyllis,Maldonado,Costa PLC,Lake Whitney,Saint Barthelemy,4500370767,001-508-064-6725x017,yhanson@warner-diaz.org,2021-01-25,http://www.bernard.com/ 58,B5acdFC982124F2,Danny,Parrish,Novak LLC,East Jaredbury,United Arab Emirates,(669)384-8597x8794,506.731.5952x571,howelldarren@house-cohen.com,2021-03-17,http://www.parsons-hudson.com/ 59,8c7DdF10798bCC3,Kathy,Hill,"Moore, Mccoy and Glass",Selenabury,South Georgia and the South Sandwich Islands,001-171-716-2175x310,888.625.0654,ncamacho@boone-simmons.org,2020-11-15,http://hayden.com/ 60,C681dDd0cc422f7,Kelli,Hardy,Petty Ltd,Huangfort,Sao Tome and Principe,020.324.2191x2022,424-157-8216,kristopher62@oliver.com,2020-12-20,http://www.kidd.com/ 61,a940cE42e035F28,Lynn,Pham,"Brennan, Camacho and Tapia",East Pennyshire,Portugal,846.468.6834x611,001-248-691-0006,mpham@rios-guzman.com,2020-08-21,https://www.murphy.com/ 62,9Cf5E6AFE0aeBfd,Shelley,Harris,"Prince, Malone and Pugh",Port Jasminborough,Togo,423.098.0315x8373,+1-386-458-8944x15194,zachary96@mitchell-bryant.org,2020-12-10,https://www.ryan.com/ 63,aEcbe5365BbC67D,Eddie,Jimenez,Caldwell Group,West Kristine,Ethiopia,+1-235-657-1073x6306,(026)401-7353x2417,kristiwhitney@bernard.com,2022-03-24,http://cherry.com/ 64,FCBdfCEAe20A8Dc,Chloe,Hutchinson,Simon LLC,South Julia,Netherlands,981-544-9452,+1-288-552-4666x060,leah85@sutton-terrell.com,2022-05-15,https://mitchell.info/ 65,636cBF0835E10ff,Eileen,Lynch,"Knight, Abbott and Hubbard",Helenborough,Liberia,+1-158-951-4131x53578,001-673-779-6713x680,levigiles@vincent.com,2021-01-02,http://mckay.com/ 66,fF1b6c9E8Fbf1ff,Fernando,Lambert,Church-Banks,Lake Nancy,Lithuania,497.829.9038,3863743398,fisherlinda@schaefer.net,2021-04-23,https://www.vang.com/ 67,2A13F74EAa7DA6c,Makayla,Cannon,Henderson Inc,Georgeport,New Caledonia,001-215-801-6392x46009,027-609-6460,scottcurtis@hurley.biz,2020-01-20,http://www.velazquez.net/ 68,a014Ec1b9FccC1E,Tom,Alvarado,Donaldson-Dougherty,South Sophiaberg,Kiribati,(585)606-2980x2258,730-797-3594x5614,nicholsonnina@montgomery.info,2020-08-18,http://odom-massey.com/ 69,421a109cABDf5fa,Virginia,Dudley,Warren Ltd,Hartbury,French Southern Territories,027.846.3705x14184,+1-439-171-1846x4636,zvalencia@phelps.com,2021-01-31,http://hunter-esparza.com/ 70,CC68FD1D3Bbbf22,Riley,Good,Wade PLC,Erikaville,Canada,6977745822,855-436-7641,alex06@galloway.com,2020-02-03,http://conway.org/ 71,CBCd2Ac8E3eBDF9,Alexandria,Buck,Keller-Coffey,Nicolasfort,Iran,078-900-4760x76668,414-112-8700x68751,lee48@manning.com,2021-02-20,https://ramsey.org/ 72,Ef859092FbEcC07,Richard,Roth,Conway-Mcbride,New Jasmineshire,Morocco,581-440-6539,9857827463,aharper@maddox-townsend.org,2020-02-23,https://www.brooks.com/ 73,F560f2d3cDFb618,Candice,Keller,Huynh and Sons,East Summerstad,Zimbabwe,001-927-965-8550x92406,001-243-038-4271x53076,buckleycory@odonnell.net,2020-08-22,https://www.lucero.com/ 74,A3F76Be153Df4a3,Anita,Benson,Parrish Ltd,Skinnerport,Russian Federation,874.617.5668x69878,(399)820-6418x0071,angie04@oconnell.com,2020-02-09,http://oconnor.com/ 75,D01Af0AF7cBbFeA,Regina,Stein,Guzman-Brown,Raystad,Solomon Islands,001-469-848-0724x4407,001-085-360-4426x00357,zrosario@rojas-hardin.net,2022-01-15,http://www.johnston.info/ 76,d40e89dCade7b2F,Debra,Riddle,"Chang, Aguirre and Leblanc",Colinhaven,United States Virgin Islands,+1-768-182-6014x14336,(303)961-4491,shieldskerry@robles.com,2020-07-11,http://kaiser.info/ 77,BF6a1f9bd1bf8DE,Brittany,Zuniga,Mason-Hester,West Reginald,Kyrgyz Republic,(050)136-9025,001-480-851-2496x0157,mchandler@cochran-huerta.org,2021-07-24,http://www.boyle.com/ 78,FfaeFFbbbf280db,Cassidy,Mcmahon,"Mcguire, Huynh and Hopkins",Lake Sherryborough,Myanmar,5040771311,684-682-0021x1326,katrinalane@fitzgerald.com,2020-10-21,https://hurst.com/ 79,CbAE1d1e9a8dCb1,Laurie,Pennington,"Sanchez, Marsh and Hale",Port Katherineville,Dominica,007.155.3406x553,+1-809-862-5566x277,cookejill@powell.com,2020-06-08,http://www.hebert.com/ 80,A7F85c1DE4dB87f,Alejandro,Blair,"Combs, Waller and Durham",Thomasland,Iceland,(690)068-4641x51468,555.509.8691x2329,elizabethbarr@ewing.com,2020-09-19,https://mercado-blevins.com/ 81,D6CEAfb3BDbaa1A,Leslie,Jennings,Blankenship-Arias,Coreybury,Micronesia,629.198.6346,075.256.0829,corey75@wiggins.com,2021-11-13,https://www.juarez.com/ 82,Ebdb6F6F7c90b69,Kathleen,Mckay,"Coffey, Lamb and Johnson",Lake Janiceton,Saint Vincent and the Grenadines,(733)910-9968,(691)247-4128x0665,chloelester@higgins-wilkinson.com,2021-09-12,http://www.owens-mooney.com/ 83,E8E7e8Cfe516ef0,Hunter,Moreno,Fitzpatrick-Lawrence,East Clinton,Isle of Man,(733)833-6754,001-761-013-7121,isaac26@benton-finley.com,2020-12-28,http://walls.info/ 84,78C06E9b6B3DF20,Chad,Davidson,Garcia-Jimenez,South Joshuashire,Oman,8275702958,(804)842-4715,justinwalters@jimenez.com,2021-11-15,http://www.garner-oliver.com/ 85,03A1E62ADdeb31c,Corey,Holt,"Mcdonald, Bird and Ramirez",New Glenda,Fiji,001-439-242-4986x7918,3162708934,maurice46@morgan.com,2020-02-18,http://www.watson.com/ 86,C6763c99d0bd16D,Emma,Cunningham,Stephens Inc,North Jillianview,New Zealand,128-059-0206x60217,(312)164-4545x2284,walter83@juarez.org,2022-05-13,http://www.reid.info/ 87,ebe77E5Bf9476CE,Duane,Woods,Montoya-Miller,Lyonsberg,Maldives,(636)544-7783x7288,(203)287-1003x5932,kmercer@wagner.com,2020-07-21,http://murray.org/ 88,E4Bbcd8AD81fC5f,Alison,Vargas,"Vaughn, Watts and Leach",East Cristinabury,Benin,365-273-8144,053-308-7653x6287,vcantu@norton.com,2020-11-10,http://mason.info/ 89,efeb73245CDf1fF,Vernon,Kane,Carter-Strickland,Thomasfurt,Yemen,114-854-1159x555,499-608-4612,hilljesse@barrett.info,2021-04-15,http://www.duffy-hensley.net/ 90,37Ec4B395641c1E,Lori,Flowers,Decker-Mcknight,North Joeburgh,Namibia,679.415.1210,945-842-3659x4581,tyrone77@valenzuela.info,2021-01-09,http://www.deleon-crosby.com/ 91,5ef6d3eefdD43bE,Nina,Chavez,Byrd-Campbell,Cassidychester,Bhutan,053-344-3205,+1-330-920-5422x571,elliserica@frank.com,2020-03-26,https://www.pugh.com/ 92,98b3aeDcC3B9FF3,Shane,Foley,Rocha-Hart,South Dannymouth,Hungary,+1-822-569-0302,001-626-114-5844x55073,nsteele@sparks.com,2021-07-06,https://www.holt-sparks.com/ 93,aAb6AFc7AfD0fF3,Collin,Ayers,Lamb-Peterson,South Lonnie,Anguilla,404-645-5351x012,001-257-582-8850x8516,dudleyemily@gonzales.biz,2021-06-29,http://www.ruiz.com/ 94,54B5B5Fe9F1B6C5,Sherry,Young,"Lee, Lucero and Johnson",Frankchester,Solomon Islands,158-687-1764,(438)375-6207x003,alan79@gates-mclaughlin.com,2021-04-04,https://travis.net/ 95,BE91A0bdcA49Bbc,Darrell,Douglas,"Newton, Petersen and Mathis",Daisyborough,Mali,001-084-845-9524x1777,001-769-564-6303,grayjean@lowery-good.com,2022-02-17,https://banks.biz/ 96,cb8E23e48d22Eae,Karl,Greer,Carey LLC,East Richard,Guyana,(188)169-1674x58692,001-841-293-3519x614,hhart@jensen.com,2022-01-30,http://hayes-perez.com/ 97,CeD220bdAaCfaDf,Lynn,Atkinson,"Ware, Burns and Oneal",New Bradview,Sri Lanka,+1-846-706-2218,605.413.3198,vkemp@ferrell.com,2021-07-10,https://novak-allison.com/ 98,28CDbC0dFe4b1Db,Fred,Guerra,Schmitt-Jones,Ortegaland,Solomon Islands,+1-753-067-8419x7170,+1-632-666-7507x92121,swagner@kane.org,2021-09-18,https://www.ross.com/ 99,c23d1D9EE8DEB0A,Yvonne,Farmer,Fitzgerald-Harrell,Lake Elijahview,Aruba,(530)311-9786,001-869-452-0943x12424,mccarthystephen@horn-green.biz,2021-08-11,http://watkins.info/ 100,2354a0E336A91A1,Clarence,Haynes,"Le, Nash and Cross",Judymouth,Honduras,(753)813-6941,783.639.1472,colleen91@faulkner.biz,2020-03-11,http://www.hatfield-saunders.net/ ================================================ FILE: data/nike_2023_annual_report.txt ================================================ FORM 10-K FORM 10-KUNITED STATES SECURITIES AND EXCHANGE COMMISSION Washington, D.C. Washington, D.C. 20549 FORM 10-K (Mark One) ☑ ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(D) OF THE SECURITIES EXCHANGE ACT OF 1934 FOR THE FISCAL YEAR ENDED MAY 31, 2023 OR ☐TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(D) OF THE SECURITIES EXCHANGE ACT OF 1934 FOR THE TRANSITION PERIOD FROM TO . Commission File No. 1-10635 NIKE, Inc. (Exact name of Registrant as specified in its charter) Oregon 93-0584541 (State or other jurisdiction of incorporation) (IRS Employer Identification No.) One Bowerman Drive, Beaverton, Oregon 97005-6453 (Address of principal executive offices and zip code) (503) 671-6453 (Registrant's telephone number, including area code) SECURITIES REGISTERED PURSUANT TO SECTION 12(B) OF THE ACT: Class B Common Stock NKE New York Stock Exchange (Title of each class) (Trading symbol) (Name of each exchange on which registered) SECURITIES REGISTERED PURSUANT TO SECTION 12(G) OF THE ACT: NONE Indicate by check mark: YES NO •if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. þ ¨ •if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act. ¨ þ •whether the registrant (1) has filed all reports required to be filed by S ection 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.þ ¨ •whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (§232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).þ ¨ •whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and “emerging growth company” in Rule 12b-2 of the Exchange Act. Large accelerated filer þ Accelerated filer ☐ Non-accelerated filer ☐ Smaller reporting company ☐ Emerging growth company ☐ •if an emerging growth company, if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to S ection 13(a) of the Exchange Act.¨ •whether the registrant has filed a report on and attestation to its management's assessment of the ef fectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report.þ •if securities are registered pursuant to Section 12(b) of the Act, whether the financial statements of the registrant included in the filing reflect the correction of an error to previously issued financial statements. ¨ •whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation received by any of the registrant's executive officers during the relevant recovery period pursuant to § 240.10D-1(b). ¨ •whether the registrant is a shell company (as defined in Rule 12b-2 of the Act). ☐ þ As of November 30, 2022, the aggregate market values of the Registrant's Common Stock held by non-affiliates were: Class A $ 7,831,564,572 Class B 136,467,702,472 $ 144,299,267,044 As of July 12, 2023, the number of shares of the Registrant's Common Stock outstanding were: Class A 304,897,252 Class B 1,225,074,356 1,529,971,608 DOCUMENTS INCORPORATED BY REFERENCE: Parts of Registrant's Proxy Statement for the Annual Meeting of Shareholders to be held on September 12, 2023, are incorporated by reference into Part III of this report.NIKE, INC. ANNUAL REPORT ON FORM 10-K TABLE OF CONTENTS PAGE PART I 1 ITEM 1. Business 1 General 1 Products 1 Sales and Marketing 2 Our Markets 2 Significant Customer 3 Product Research, Design and Development 3 Manufacturing 3 International Operations and Trade 4 Competition 5 Trademarks and Patents 5 Human Capital Resources 6 Available Information and Websites 7 Information about our Executive Officers 8 ITEM 1A. Risk Factors 9 ITEM 1B. Unresolved Staff Comments 24 ITEM 2. Properties 24 ITEM 3. Legal Proceedings 24 ITEM 4. Mine Safety Disclosures 24 PART II 25 ITEM 5. Market for Registrant's Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities 25 ITEM 6. Reserved 27 ITEM 7. Management's Discussion and Analysis of Financial Condition and Results of Operations 28 ITEM 7A. Quantitative and Qualitative Disclosures about Market Risk 49 ITEM 8. Financial Statements and Supplementary Data 51 ITEM 9. Changes in and Disagreements with Accountants on Accounting and Financial Disclosure 91 ITEM 9A. Controls and Procedures 91 ITEM 9B. Other Information 91 ITEM 9C. Disclosure Regarding Foreign Jurisdictions that Prevent Inspections 91 PART III 92 (Except for the information set forth under “Information about our Executive Officers” in Item 1 above, Part III is incorporated by reference from the Proxy Statement for the NIKE, Inc. 2023 Annual Meeting of Shareholders.) ITEM 10. Directors, Executive Officers and Corporate Governance 92 ITEM 11. Executive Compensation 92 ITEM 12. Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters 92 ITEM 13. Certain Relationships and Related Transactions and Director Independence 92 ITEM 14. Principal Accountant Fees and Services 92 PART IV 93 ITEM 15. Exhibits and Financial Statement Schedules 93 ITEM 16. Form 10-K Summary 97 Signatures 99 PART I ITEM 1. BUSINESS GENERAL NIKE, Inc. was incorporated in 1967 under the laws of the State of Oregon. As used in this Annual Report on Form 10-K (this "Annual Report"), the terms "we," "us," "our," "NIKE" and the "Company" refer to NIKE, Inc. and its predecessors, subsidiaries and affiliates, collectively, unless the context indicates otherwise. Our principal business activity is the design, development and worldwide marketing and selling of athletic footwear , apparel, equipment, accessories and services. NIKE is the largest seller of athletic footwear and apparel in the world. We sell our products through NIKE Direct operations, which are comprised of both NIKE-owned retail stores and sales through our digital platforms (also referred to as "NIKE Brand Digital"), to retail accounts and to a mix of independent distributors, licensees and sales representatives in nearly all countries around the world. We also offer interactive consumer services and experiences through our digital platforms. Nearly all of our products are manufactured by independent contractors. Nearly all footwear and apparel products are manufactured outside the United States, while equipment products are manufactured both in the United States and abroad. All references to fiscal 2023, 2022, 2021 and 2020 are to NIKE, Inc.'s fiscal years ended May 31, 2023, 2022, 2021 and 2020, respectively. Any references to other fiscal years refer to a fiscal year ending on May 31 of that year. PRODUCTS Our NIKE Brand product offerings are aligned around our consumer construct focused on Men's, Women's and Kids'. We also design products specifically for the Jordan Brand and Converse. We believe this approach allows us to create products that better meet individual consumer needs while accelerating our largest growth opportunities. NIKE's athletic footwear products are designed primarily for specific athletic use, although a large percentage of the products are worn for casual or leisure purposes. We place considerable emphasis on innovation and high-quality construction in the development and manufacturing of our products. Our Men's, Women's and Jordan Brand footwear products currently lead in footwear sales and we expect them to continue to do so. We also sell sports apparel, which features the same trademarks and are sold predominantly through the same marketing and distribution channels as athletic footwear. Our sports apparel, similar to our athletic footwear products, is designed primarily for athletic use, although many of the products are worn for casual or leisure purposes, and demonstrates our commitment to innovation and high-quality construction. Our Men's and Women's apparel products currently lead in apparel sales and we expect them to continue to do so. We often market footwear, apparel and accessories in "collections" of similar use or by category. We also market apparel with licensed college and professional team and league logos. We sell a line of performance equipment and accessories under the NIKE Brand name, including bags, socks, sport balls, eyewear, timepieces, digital devices, bats, gloves, protective equipment and other equipment designed for sports activities. We also sell small amounts of various plastic products to other manufacturers through our wholly-owned subsidiary , NIKE IHM, Inc., doing business as Air Manufacturing Innovation. Our Jordan Brand designs, distributes and licenses athletic and casual footwear, apparel and accessories predominantly focused on basketball performance and culture using the Jumpman trademark. S ales and operating results for Jordan Brand products are reported within the respective NIKE Brand geographic operating segments. Our wholly-owned subsidiary brand, Converse, headquartered in Boston, Massachusetts, designs, distributes and licenses casual sneakers, apparel and accessories under the Converse, Chuck Taylor, All Star, One Star, Star Chevron and Jack Purcell trademarks. Operating results of the Converse brand are reported on a stand-alone basis. In addition to the products we sell to our wholesale customers and directly to consumers through our NIK E Direct operations, we have also entered into license agreements that permit unaffiliated parties to manufacture and sell, using NIKE-owned trademarks, certain apparel, digital devices and applications and other equipment designed for sports activities. 2023 FORM 10-K 1 We also offer interactive consumer services and experiences as well as digital products through our digital platforms, including fitness and activity apps; sport, fitness and wellness content; and digital services and features in retail stores that enhance the consumer experience. SALES AND MARKETING We experience moderate fluctuations in aggregate sales volume during the year. Historically, revenues in the first and fourth fiscal quarters have slightly exceeded those in the second and third fiscal quarters. However, the mix of product sales may vary considerably as a result of changes in seasonal and geographic demand for particular types of footwear , apparel and equipment, as well as other macroeconomic, strategic, operating and logistics-related factors. Because NIKE is a consumer products company, the relative popularity and availability of various sports and fitness activities, as well as changing design trends, affect the demand for our products. We must, therefore, respond to trends and shifts in consumer preferences by adjusting the mix of existing product offerings, developing new products, styles and categories and influencing sports and fitness preferences through extensive marketing. Failure to respond in a timely and adequate manner could have a material adverse effect on our sales and profitability. This is a continuing risk. Refer to Item 1A. Risk Factors. OUR MARKETS We report our NIKE Brand operations based on our internal geographic organization. Each NIKE Brand geographic segment operates predominantly in one industry: the design, development, marketing and selling of athletic footwear , apparel and equipment. The Company's reportable operating segments for the NIKE Brand are: North America; Europe, Middle East & Africa ("EMEA"); Greater China; and Asia Pacific & Latin America ("APLA"), and include results for the NIKE and Jordan brands. Sales through our NIKE Direct operations are managed within each geographic operating segment. Converse is also a reportable operating segment and operates predominately in one industry: the design, marketing, licensing and selling of casual sneakers, apparel and accessories. Converse direct to consumer operations, including digital commerce, are reported within the Converse operating segment results. UNITED STATES MARKET For fiscal 2023, NIKE Brand and Converse sales in the United States accounted for approximately 43% of total revenues, compared to 40% and 39% for fiscal 2022 and fiscal 2021, respectively. We sell our products to thousands of retail accounts in the United States, including a mix of footwear stores, sporting goods stores, athletic specialty stores, department stores, skate, tennis and golf shops and other retail accounts. In the United S tates, we utilize NIKE sales offices to solicit such sales. During fiscal 2023, our three largest United States customers accounted for approximately 22% of sales in the United States. Our NIKE Direct and Converse direct to consumer operations sell our products to consumers through various digital platforms. In addition, our NIKE Direct and Converse direct to consumer operations sell products through the following number of retail stores in the United States: U.S. RETAIL STORES NUMBER NIKE Brand factory stores 213 NIKE Brand in-line stores (including employee-only stores) 74 Converse stores (including factory stores) 82 TOTAL 369 In the United States, NIKE has eight significant distribution centers. Refer to Item 2. Properties for further information. NIKE, INC. 2INTERNATIONAL MARKETS For fiscal 2023, non-U.S. NIKE Brand and Converse sales accounted for approximately 57% of total revenues, compared to 60% and 61% for fiscal 2022 and fiscal 2021, respectively. We sell our products to retail accounts through our own NIKE Direct operations and through a mix of independent distributors, licensees and sales representatives around the world. W e sell to thousands of retail accounts and ship products from 67 distribution centers outside of the United States. Refer to Item 2. Properties for further information on distribution facilities outside of the United States. During fiscal 2023, NIKE's three largest customers outside of the United States accounted for approximately 14% of total non-U.S. sales. In addition to NIKE-owned and Converse-owned digital commerce platforms in over 40 countries, our NIKE Direct and Converse direct to consumer businesses operate the following number of retail stores outside the United States: NON-U.S. RETAIL STORES NUMBER NIKE Brand factory stores 560 NIKE Brand in-line stores (including employee-only stores) 49 Converse stores (including factory stores) 54 TOTAL 663 SIGNIFICANT CUSTOMER No customer accounted for 10% or more of our consolidated net Revenues during fiscal 2023. PRODUCT RESEARCH, DESIGN AND DEVELOPMENT We believe our research, design and development efforts are key factors in our success. Technical innovation in the design and manufacturing process of footwear, apparel and athletic equipment receives continued emphasis as we strive to produce products that help to enhance athletic performance, reduce injury and maximize comfort, while decreasing our environmental impact. In addition to our own staff of specialists in the areas of biomechanics, chemistry, exercise physiology, engineering, digital technologies, industrial design, sustainability and related fields, we also utilize research committees and advisory boards made up of athletes, coaches, trainers, equipment managers, orthopedists, podiatrists, physicians and other experts who consult with us and review certain designs, materials and concepts for product and manufacturing, design and other process improvements and compliance with product safety regulations around the world. E mployee athletes, athletes engaged under sports marketing contracts and other athletes wear-test and evaluate products during the design and development process. As we continue to develop new technologies, we are simultaneously focused on the design of innovative products and experiences incorporating such technologies throughout our product categories and consumer applications. Using market intelligence and research, our various design teams identify opportunities to leverage new technologies in existing categories to respond to consumer preferences. The proliferation of Nike Air, Zoom, Free, Dri-FIT, Flyknit, FlyEase, ZoomX, Air Max, React and Forward technologies, among others, typifies our dedication to designing innovative products. MANUFACTURING Nearly all of our footwear and apparel products are manufactured outside the United S tates by independent manufacturers ("contract manufacturers"), many of which operate multiple factories. We are also supplied, primarily indirectly, by a number of materials, or "Tier 2" suppliers, who provide the principal materials used in footwear and apparel finished goods products. As of May 31, 2023, we had 146 strategic Tier 2 suppliers. As of May 31, 2023, our contract manufacturers operated 123 finished goods footwear factories located in 11 countries. For fiscal 2023, NIKE Brand footwear finished goods were manufactured by 15 contract manufacturers, many of which operate multiple factories. The largest single finished goods footwear factory accounted for approximately 9% of total fiscal 2023 NIKE Brand footwear production. For fiscal 2023, factories in Vietnam, Indonesia and China manufactured approximately 50%, 27% and 18% of total NIKE Brand footwear, respectively. For fiscal 2023, four footwear contract manufacturers each accounted for greater than 10% of footwear production and in the aggregate accounted for approximately 58% of NIKE Brand footwear production. As of May 31, 2023, our contract manufacturers operated 291 finished goods apparel factories located in 31 countries. For fiscal 2023, NIKE Brand apparel finished goods were manufactured by 55 contract manufacturers, many of which operate multiple factories. The largest single finished goods apparel factory accounted for approximately 8% of total fiscal 2023 NIKE Brand apparel production. For fiscal 2023, factories in Vietnam, China and Cambodia manufactured approximately 29%, 18% and 16% 2023 FORM 10-K 3 of total NIKE Brand apparel, respectively. For fiscal 2023, one apparel contract manufacturer accounted for more than 10% of apparel production, and the top five contract manufacturers in the aggregate accounted for approximately 52% of NIKE Brand apparel production. NIKE's contract manufacturers buy raw materials for the manufacturing of our footwear, apparel and equipment products. Most raw materials are available and purchased by those contract manufacturers in the countries where manufacturing takes place. The principal materials used in our footwear products are natural and synthetic rubber , plastic compounds, foam cushioning materials, natural and synthetic leather, nylon, polyester and natural fiber textiles, as well as polyurethane films used to make NIKE Air-Sole cushioning components. During fiscal 2023, Air Manufacturing Innovation, a wholly-owned subsidiary, with facilities near Beaverton, Oregon, in Dong Nai Province, Vietnam, and St. Charles, Missouri, as well as contract manufacturers in China and Vietnam, were our suppliers of NIKE Air-Sole cushioning components used in footwear. The principal materials used in our apparel products are natural and synthetic fabrics, yarns and threads (both virgin and recycled); specialized performance fabrics designed to efficiently wick moisture away from the body, retain heat and repel rain and/or snow; and plastic and metal hardware. In fiscal 2023, we experienced ongoing supply chain volatility during the first part of the year, which improved gradually during the course of the year. We also experienced higher supply chain network costs primarily due to inflationary pressures during the year. Despite competition for certain materials during fiscal 2023, contract manufacturers were able to source sufficient quantities of raw materials for use in our footwear and apparel products. Refer to Item 1A . Risk Factors, for additional discussion of the impact of sourcing risks on our business. Since 1972, Sojitz Corporation of America ("Sojitz America"), a large Japanese trading company and the sole owner of our redeemable preferred stock, has performed import-export financing services for us. INTERNATIONAL OPERATIONS AND TRADE Our international operations and sources of supply are subject to the usual risks of doing business abroad, such as the implementation of, or potential changes in, foreign and domestic trade policies, increases in import duties, anti-dumping measures, quotas, safeguard measures, trade restrictions, restrictions on the transfer of funds and, in certain parts of the world, political tensions, instability, conflicts, nationalism and terrorism, and resulting sanctions and other measures imposed in response to such issues. We have not, to date, been materially affected by any such risk but cannot predict the likelihood of such material effects occurring in the future. In recent years, uncertain global and regional economic and political conditions have af fected international trade and increased protectionist actions around the world. These trends are affecting many global manufacturing and service sectors, and the footwear and apparel industries, as a whole, are not immune. Companies in our industry are facing trade protectionism in many different regions, and, in nearly all cases, we are working together with industry groups to address trade issues and reduce the impact to the industry, while observing applicable competition laws. Notwithstanding our efforts, protectionist measures have resulted in increases in the cost of our products, and additional measures, if implemented, could adversely af fect sales and/or profitability for NIKE, as well as the imported footwear and apparel industry as a whole. We monitor protectionist trends and developments throughout the world that may materially impact our industry, and we engage in administrative and judicial processes to mitigate trade restrictions. W e are actively monitoring actions that may result in additional anti-dumping measures and could affect our industry. We are also monitoring for and advocating against other impediments that may limit or delay customs clearance for imports of footwear , apparel and equipment. NIKE also advocates for trade liberalization for footwear and apparel in a number of bilateral and multilateral free trade agreements. Changes in, and responses to, U.S. trade policies, including the imposition of tariffs or penalties on imported goods or retaliatory measures by other countries, have negatively affected, and could in the future negatively affect, U.S. corporations, including NIKE, with business operations and/or consumer markets in those countries, which could also make it necessary for us to change the way we conduct business, either of which may have an adverse effect on our business, financial condition or our results of operations. In addition, with respect to proposed trade restrictions, we work with a broad coalition of global businesses and trade associations representing a wide variety of sectors to help ensure that any legislation enacted and implemented (i) addresses legitimate and core concerns, (ii) is consistent with international trade rules and (iii) reflects and considers domestic economies and the important role they may play in the global economic community . Where trade protection measures are implemented, we believe we have the ability to develop, over a period of time, adequate alternative sources of supply for the products obtained from our present suppliers. If events prevented us from acquiring products from our suppliers in a particular country, our operations could be temporarily disrupted and we could experience an adverse financial impact. However, we believe we could abate any such disruption, and that much of the adverse impact on supply would, therefore, be of a short-term nature, although alternate sources of supply might not be as cost-ef fective and could have an ongoing adverse impact on profitability. NIKE, INC. 4Our international operations are also subject to compliance with the U.S . Foreign Corrupt Practices Act (the "FCPA"), and other anti-bribery laws applicable to our operations. We source a significant portion of our products from, and have important consumer markets, outside of the United States. We have an ethics and compliance program to address compliance with the FCPA and similar laws by us, our employees, agents, suppliers and other partners. Refer to Item 1A. Risk Factors for additional information on risks relating to our international operations. COMPETITION The athletic footwear, apparel and equipment industry is highly competitive on a worldwide basis. We compete internationally with a significant number of athletic and leisure footwear companies, athletic and leisure apparel companies, sports equipment companies and large companies having diversified lines of athletic and leisure footwear , apparel and equipment, including adidas, Anta, ASICS, Li Ning, lululemon athletica, New Balance, Puma, Under Armour and V.F. Corporation, among others. The intense competition and the rapid changes in technology and consumer preferences in the markets for athletic and leisure footwear and apparel and athletic equipment constitute significant risk factors in our operations. Refer to Item 1A . Risk Factors for additional information. NIKE is the largest seller of athletic footwear and apparel in the world. Important aspects of competition in this industry are: •Product attributes such as quality; performance and reliability; new product style, design, innovation and development; as well as consumer price/value. •Consumer connection, engagement and affinity for brands and products, developed through marketing, promotion and digital experiences; social media interaction; customer support and service; identification with prominent and influential athletes, influencers, public figures, coaches, teams, colleges and sports leagues who endorse our brands and use our products and active engagement through sponsored sporting events and clinics. •Effective sourcing and distribution of products, with attractive merchandising and presentation at retail, both in-store and on digital platforms. We believe that we are competitive in all of these areas. TRADEMARKS AND PATENTS We believe that our intellectual property rights are important to our brand, our success and our competitive position. We strategically pursue available protections of these rights and vigorously protect them against third-party theft and infringement. We use trademarks on nearly all of our products and packaging, and in our marketing materials, and believe having distinctive marks that are readily identifiable is an important factor in creating a market for our goods, in identifying our brands and the Company, and in distinguishing our goods from the goods of others. We consider our NIKE and Swoosh Design trademarks to be among our most valuable assets and we have registered these trademarks in over 190 jurisdictions worldwide. In addition, we own many other trademarks that we use in marketing our products. W e own common law rights in the trade dress of several distinctive shoe designs and elements. For certain trade dress, we have sought and obtained trademark registrations. We have copyright protection in our designs, graphics, software applications, digital goods and other original works. When appropriate, we also obtain registered copyrights. We file for, own and maintain many U.S. and foreign utility and design patents protecting components, technologies, materials, manufacturing techniques, features, functionality, and industrial designs used in and for the manufacture of various athletic, performance, and leisure footwear and apparel, including physical and digital versions thereof, athletic equipment, and digital devices, and related software applications. These patents expire at various times. We believe our success depends upon our capabilities in areas such as design, research and development, production and marketing and is supported and protected by our intellectual property rights, such as trademarks, utility and design patents, copyrights, and trade secrets, among others. We have followed a policy of applying for and registering intellectual property rights in the United States and select foreign countries on trademarks, inventions, innovations and designs that we deem valuable. W e also continue to vigorously protect our intellectual property, including trademarks, patents and trade secrets against third-party infringement and misappropriation. 2023 FORM 10-K 5 HUMAN CAPITAL RESOURCES At NIKE, we consider the strength and effective management of our workforce to be essential to the ongoing success of our business. We believe that it is important to attract, develop and retain a diverse and engaged workforce at all levels of our business and that such a workforce fosters creativity and accelerates innovation. W e are focused on building an increasingly diverse talent pipeline that reflects our consumers, athletes and the communities we serve. CULTURE Each employee shapes NIKE's culture through behaviors and practices. This starts with our Maxims, which represent our core values and, along with our Code of Conduct, feature the fundamental behaviors that help anchor , inform and guide us and apply to all employees. Our mission is to bring inspiration and innovation to every athlete in the world, which includes the belief that if you have a body, you are an athlete. We aim to do this by creating groundbreaking sport innovations, making our products more sustainably, building a creative and diverse global team, supporting the well-being of our employees and making a positive impact in communities where we live and work. Our mission is aligned with our deep commitment to maintaining an environment where all NIKE employees have the opportunity to reach their full potential, to connect to our brands and to shape our workplace culture. We believe providing for growth and retention of our employees is essential in fostering such a culture and are dedicated to giving access to training programs and career development opportunities, including trainings on NIK E's values, history and business, trainings on developing leadership skills at all levels, tools and resources for managers and qualified tuition reimbursement opportunities. As part of our commitment to empowering our employees to help shape our culture, we source employee feedback through our Engagement Survey program, including several corporate pulse surveys. The program provides every employee throughout the globe an opportunity to provide confidential feedback on key areas known to drive employee engagement, including their satisfaction with their managers, their work and the Company generally . The program also measures our employees’ emotional commitment to NIKE as well as NIKE's culture of diversity, equity and inclusion. NIKE also provides multiple points of contact for employees to speak up if they experience something that does not align with our values or otherwise violates our workplace policies, even if they are uncertain what they observed or heard is a violation of company policy . As part of our commitment to make a positive impact on our communities, we maintain a goal of investing 2% of our prior fiscal year's pre-tax income into global communities. The focus of this investment continues to be inspiring kids to be active through play and sport as well as uniting and inspiring communities to create a better and more equitable future for all. Our community investments are an important part of our culture in that we also support employees in giving back to community organizations through donations and volunteering, which are matched by the NIK E Foundation where eligible. EMPLOYEE BASE As of May 31, 2023, we had approximately 83,700 employees worldwide, including retail and part-time employees. We also utilize independent contractors and temporary personnel to supplement our workforce. None of our employees are represented by a union, except certain employees in the E MEA and APLA geographies are members of and/or represented by trade unions, as allowed or required by local law and/or collective bargaining agreements. Also, in some countries outside of the United States, local laws require employee representation by works councils (which may be entitled to information and consultation on certain subsidiary decisions) or by organizations similar to a union. In certain E uropean countries, we are required by local law to enter into, and/or comply with, industry-wide or national collective bargaining agreements. NIK E has never experienced a material interruption of operations due to labor disagreements. DIVERSITY, EQUITY AND INCLUSION Diversity, equity and inclusion ("DE&I") is a strategic priority for NIKE and we are committed to having an increasingly diverse team and culture. We aim to foster an inclusive and accessible workplace through recruitment, development and retention of diverse talent with the goal of expanding representation across all dimensions of diversity over the long term. W e remain committed to the targets announced in fiscal 2021 for the Company to work toward by fiscal 2025, including increasing representation of women in our global corporate workforce and leadership positions, as well as increasing representation of U.S . racial and ethnic minorities in our U.S. corporate workforce and at the Director level and above. We continue to enhance our efforts to recruit diverse talent through our traditional channels and through initiatives, such as partnerships with athletes and sports-related organizations to create apprenticeship programs and new partnerships with organizations, colleges and universities that serve diverse populations. Additionally, we are prioritizing DE&I education so that all NIKE employees and leaders have the cultural awareness and understanding to lead inclusively and build diverse and inclusive teams. We also have Employee Networks, collectively known as NikeUNITED, representing various employee groups. NIKE, INC. 6Our DE&I focus extends beyond our workforce and includes our communities, which we support in a number of ways. We have committed to investments that aim to address racial inequality and improve diversity and representation in our communities. W e also are leveraging our global scale to accelerate business diversity , including investing in business training programs for women and increasing the proportion of services supplied by minority-owned businesses. COMPENSATION AND BENEFITS NIKE's total rewards are intended to be competitive and equitable, meet the diverse needs of our global teammates and reinforce our values. We are committed to providing comprehensive, competitive and equitable pay and benefits to our employees, and we have invested, and aim to continue to invest, in our employees through growth and development and holistic well-being initiatives. Our initiatives in this area include: •We are committed to competitive pay and to reviewing our pay and promotion practices annually. •We have an annual company bonus plan and a retail-focused bonus plan applicable to all eligible employees. Both programs are focused on rewarding employees for company performance, which we believe reinforces our culture and rewards behaviors that support collaboration and teamwork. •We provide comprehensive family care benefits in the U.S. and globally where practicable, including family planning coverage, backup care and child/elder care assistance as well as an income-based childcare subsidy for eligible employees. •Our Military Leave benefit provides up to 12 weeks of paid time of f every 12 months. •We offer free access to our Sport Centers at our world headquarters for our full-time employees and North America store employees. •We provide employees free access to mindfulness and meditation resources, as well as live classes through our Sport Centers. •We provide all employees and their families globally with free and confidential visits with a mental health counselor through a third-party provider and our global Employee Assistance Program (EAP). •We provide support to our employees in a variety of ways during times of crisis, including pay continuity under certain circumstances, our natural disaster assistance program, and ongoing support for challenges related to the COVID-19 pandemic. •We provide a hybrid work approach for the majority of employees, as well as a Four Week Flex, which provides employees an opportunity to work from a location of their choice for up to four weeks per year. •We offer a Well-Being Week where we close our corporate offices for a full-week in the summer and Well-Being Days for our teammates in our retail stores and distribution centers, and encourage our teammates to focus on their well-being. •We provide inclusive family planning benefits and transgender healthcare coverage for eligible employees covered on the U.S. Health Plan, including access to both restorative services and personal care. •We provide all U.S. employees with unlimited free financial coaching through a third-party provider. Additional information related to our human capital strategy can be found in our FY22 NIKE, Inc. Impact Report, which is available on the Impact section of about.nike.com. Information contained on or accessible through our websites is not incorporated into, and does not form a part of, this Annual Report or any other report or document we file with the SEC, and any references to our websites are intended to be inactive textual references only . AVAILABLE INFORMATION AND WEBSITES Our NIKE digital commerce website is located at www.nike.com. On our NIKE corporate website, located at investors.nike.com, we post the following filings as soon as reasonably practicable after they are electronically filed with, or furnished to, the United States Securities and Exchange Commission (the "SEC"): our annual report on Form 10-K, our quarterly reports on Form 10-Q, our current reports on Form 8-K and any amendments to those reports filed or furnished pursuant to Section 13(a) or 15(d) of the Securities and Exchange Act of 1934, as amended. Our proxy statements are also posted on our corporate website. All such filings on our corporate website are available free of charge. Copies of these filings are also available on the S EC's website at www.sec.gov. Also available on our corporate website are the charters of the committees of our Board of Directors, as well as our corporate governance guidelines and code of ethics. Copies of any of these documents will be provided in print to any shareholder who submits a request in writing to NIKE Investor Relations, One Bowerman Drive, Beaverton, Oregon 97005-6453. Information contained on or accessible through our website is not incorporated into, and does not form a part of, this Annual Report or any other report or document we file with the SEC, and any references to our website are intended to be inactive textual references only. 2023 FORM 10-K 7 INFORMATION ABOUT OUR EXECUTIVE OFFICERS The executive officers of NIKE, Inc. as of July 20, 2023, are as follows: Mark G. Parker , Executive Chairman — Mr. Parker, 67, is Executive Chairman of the Board of Directors and served as President and Chief Executive Officer from 2006 - January 2020. He has been employed by NIKE since 1979 with primary responsibilities in product research, design and development, marketing and brand management. Mr. Parker was appointed divisional Vice President in charge of product development in 1987, corporate Vice President in 1989, General Manager in 1993, Vice President of Global Footwear in 1998 and President of the NIKE Brand in 2001. John J. Donahoe II , President and Chief Executive Officer — Mr. Donahoe, 63, was appointed President and Chief Executive Officer in January 2020 and has been a director since 2014. He brings expertise in digital commerce, technology and global strategy. He previously served as President and Chief Executive Officer at ServiceNow, Inc. Prior to joining ServiceNow, Inc., he served as President and Chief Executive Officer of eBay, Inc. He also held leadership roles at Bain & Company for two decades. Matthew Friend , Executive Vice President and Chief Financial Officer — Mr. Friend, 45, joined NIKE in 2009 and leads the Company's finance, demand & supply management, procurement and global places & services organizations. He joined NIKE as Senior Director of Corporate Strategy and Development, and was appointed Chief Financial Officer of Emerging Markets in 2011. In 2014, Mr. Friend was appointed Chief Financial Officer of Global Categories, Product and Functions, and was subsequently appointed Chief Financial Officer of the NIKE Brand in 2016. He was also appointed Vice President of Investor Relations in 2019. Mr. Friend was appointed as Executive Vice President and Chief Financial Officer of NIKE, Inc. in April 2020. Prior to joining NIKE, he worked in the financial industry including roles as VP of investment banking and mergers and acquisitions at Goldman Sachs and Morgan Stanley. Monique S. Matheson , Executive Vice President, Chief Human Resources Officer — Ms. Matheson, 56, joined NIKE in 1998, with primary responsibilities in the human resources function. She was appointed as Vice President and Senior Business Partner in 2011 and Vice President, Chief Talent and Diversity Officer in 2012. Ms. Matheson was appointed Executive Vice President, Global Human Resources in 2017. Ann M. Miller , Executive Vice President, Chief Legal Officer — Ms. Miller, 49, joined NIKE in 2007 and serves as EVP, Chief Legal Officer for NIKE, Inc. In her capacity as Chief Legal Officer, she oversees all legal, compliance, government & public affairs, social community impact, security, resilience and investigation matters of the Company. For the past six years, she served as Vice President, Corporate Secretary and Chief Ethics & Compliance Officer. She previously served as Converse's General Counsel, and brings more than 20 years of legal and business expertise to her role. P rior to joining NIKE, Ms. Miller worked at the law firm Sullivan & Cromwell. Heidi O'Neill , President, Consumer, Brand & Product — Ms. O'Neill, 58, joined NIKE in 1998 and leads the integration of global Men's, Women's & Kids' consumer teams, the entire global product engine and global brand marketing and sports marketing to build deep storytelling, relationships and engagement with the brand. Since joining NIKE, she has held a variety of key roles, including leading NIKE's marketplace and four geographic operating regions, leading NIKE Direct and accelerating NIKE's retail and digital-commerce business and creating and leading NIKE's Women’s business. Prior to NIKE, Ms. O'Neill held roles at Levi Strauss & Company and Foote, Cone & Belding. Craig Williams , President, Geographies & Marketplace — Mr. Williams, 54, joined NIKE in 2019 and leads NIKE's four geographies and marketplace across the NIKE Direct and wholesale business. In addition, he leads the Supply Chain and Logistics organization. Mr. Williams joined NIKE as President of Jordan Brand overseeing a team of designers, product developers, marketers and business leaders. Prior to NIKE, he was Senior Vice President, The Coca-Cola Co., and President of The McDonald's Division (TMD) Worldwide. Mr. Williams has also held roles at CIBA Vision and Kraft Foods Inc., and served five years in the U.S. Navy as a Naval Nuclear Power Officer. NIKE, INC. 8ITEM 1A. RISK FACTORS Special Note Regarding Forward-Looking Statements and Analyst Reports Certain written and oral statements, other than purely historic information, including estimates, projections, statements relating to NIKE's business plans, objectives and expected operating or financial results and the assumptions upon which those statements are based, made or incorporated by reference from time to time by NIK E or its representatives in this Annual Report, other reports, filings with the SEC, press releases, conferences or otherwise, are "forward-looking statements" within the meaning of the Private Securities Litigation Reform Act of 1995 and Section 21E of the Securities Exchange Act of 1934, as amended. Forward-looking statements include, without limitation, any statement that may predict, forecast, indicate or imply future results, performance or achievements, and may contain the words "believe," "anticipate," "expect," "estimate," "project," "will be," "will continue," "will likely result" or words or phrases of similar meaning. Forward-looking statements involve risks and uncertainties which may cause actual results to differ materially from the forward-looking statements. The risks and uncertainties are detailed from time to time in reports filed by NIKE with the SEC, including reports filed on Forms 8-K, 10-Q and 10-K, and include, among others, the following: international, national and local political, civil, economic and market conditions, including high, and increases in, inflation and interest rates; the size and growth of the overall athletic or leisure footwear, apparel and equipment markets; intense competition among designers, marketers, distributors and sellers of athletic or leisure footwear , apparel and equipment for consumers and endorsers; demographic changes; changes in consumer preferences; popularity of particular designs, categories of products and sports; seasonal and geographic demand for NIK E products; difficulties in anticipating or forecasting changes in consumer preferences, consumer demand for NIK E products and the various market factors described above; our ability to execute on our sustainability strategy and achieve our sustainability-related goals and targets, including sustainable product offerings; difficulties in implementing, operating and maintaining NIKE's increasingly complex information technology systems and controls, including, without limitation, the systems related to demand and supply planning and inventory control; interruptions in data and information technology systems; consumer data security; fluctuations and dif ficulty in forecasting operating results, including, without limitation, the fact that advance orders may not be indicative of future revenues due to changes in shipment timing, the changing mix of orders with shorter lead times, and discounts, order cancellations and returns; the ability of NIKE to sustain, manage or forecast its growth and inventories; the size, timing and mix of purchases of NIKE's products; increases in the cost of materials, labor and energy used to manufacture products; new product development and introduction; the ability to secure and protect trademarks, patents and other intellectual property; product performance and quality; customer service; adverse publicity and an inability to maintain NIK E's reputation and brand image, including without limitation, through social media or in connection with brand damaging events; the loss of significant customers or suppliers; dependence on distributors and licensees; business disruptions; increased costs of freight and transportation to meet delivery deadlines; increases in borrowing costs due to any decline in NIK E's debt ratings; changes in business strategy or development plans; general risks associated with doing business outside of the United S tates, including, without limitation, exchange rate fluctuations, import duties, tariffs, quotas, sanctions, political and economic instability, conflicts and terrorism; the potential impact of new and existing laws, regulations or policy, including, without limitation, tariffs, import/export, trade, wage and hour or labor and immigration regulations or policies; changes in government regulations; the impact of, including business and legal developments relating to, climate change, extreme weather conditions and natural disasters; litigation, regulatory proceedings, sanctions or any other claims asserted against NIKE; the ability to attract and retain qualified employees, and any negative public perception with respect to key personnel or our corporate culture, values or purpose; the ef fects of NIKE's decision to invest in or divest of businesses or capabilities; health epidemics, pandemics and similar outbreaks, including the COV ID-19 pandemic; and other factors referenced or incorporated by reference in this Annual Report and other reports. Investors should also be aware that while NIKE does, from time to time, communicate with securities analysts, it is against NIKE's policy to disclose to them any material non-public information or other confidential commercial information. Accordingly, shareholders should not assume that NIKE agrees with any statement or report issued by any analyst irrespective of the content of the statement or report. Furthermore, NIKE has a policy against confirming financial forecasts or projections issued by others. Thus, to the extent that reports issued by securities analysts contain any projections, forecasts or opinions, such reports are not the responsibility of NIKE. Risk Factors The risks included here are not exhaustive. Other sections of this Annual Report may include additional factors which could adversely affect NIKE's business and financial performance. Moreover, NIKE operates in a very competitive and rapidly changing environment. New risks emerge from time to time and it is not possible for management to predict all such risks, nor can it assess the impact of all such risks on NIKE's business or the extent to which any risk, or combination of risks, may cause actual results to differ materially from those contained in any forward-looking statements. Given these risks and uncertainties, investors should not place undue reliance on forward-looking statements as a prediction of actual results. 2023 FORM 10-K 9 Economic and Industry Risks Global economic conditions could have a material adverse effect on our business, operating results and financial condition. The uncertain state of the global economy, including high and rising levels of inflation and interest rates and the risk of a recession, continues to impact businesses around the world. If global economic and financial market conditions deteriorate, the following factors, among others, could have a material adverse ef fect on our business, operating results and financial condition: •Our sales are impacted by discretionary spending by consumers. Declines in consumer spending have in the past resulted in and may in the future result in reduced demand for our products, increased inventories, reduced orders from retailers for our products, order cancellations, lower revenues, higher discounts and lower gross margins. •In the future, we may be unable to access financing in the credit and capital markets at reasonable rates in the event we find it desirable to do so. •We conduct transactions in various currencies, which creates exposure to fluctuations in foreign currency exchange rates relative to the U.S. Dollar. Continued volatility in the markets and exchange rates for foreign currencies and contracts in foreign currencies has had and could continue to have a significant impact on our reported operating results and financial condition. •Continued volatility in the availability and prices for commodities and raw materials we use in our products and in our supply chain (such as cotton or petroleum derivatives) has had and could in the future have a material adverse effect on our costs, gross margins and profitability. In addition, supply chain issues caused by factors including the COVID-19 pandemic and geopolitical conflicts have impacted and may continue to impact the availability , pricing and timing for obtaining commodities and raw materials. •If retailers of our products experience declining revenues or experience dif ficulty obtaining financing in the capital and credit markets to purchase our products, this could result in reduced orders for our products, order cancellations, late retailer payments, extended payment terms, higher accounts receivable, reduced cash flows, greater expense associated with collection efforts and increased bad debt expense. •In the past, certain retailers of our products have experienced severe financial difficulty, become insolvent and ceased business operations, and this could occur in the future, which could negatively impact the sale of our products to consumers. •If contract manufacturers of our products or other participants in our supply chain experience difficulty obtaining financing in the capital and credit markets to purchase raw materials or to finance capital equipment and other general working capital needs, it may result in delays or non-delivery of shipments of our products. Our products, services and experiences face intense competition. NIKE is a consumer products company and the relative popularity of various sports and fitness activities and changing design trends affect the demand for our products, services and experiences. The athletic footwear, apparel and equipment industry is highly competitive both in the United States and worldwide. We compete internationally with a significant number of athletic and leisure footwear companies, athletic and leisure apparel companies, sports equipment companies, private labels and large companies that have diversified lines of athletic and leisure footwear , apparel and equipment. We also compete with other companies for the production capacity of contract manufacturers that produce our products. In addition, we and our contract manufacturers compete with other companies and industries for raw materials used in our products. Our NIK E Direct operations, both through our digital commerce operations and retail stores, also compete with multi-brand retailers, which sell our products through their digital platforms and physical stores, and with digital commerce platforms. In addition, we compete with respect to the digital services and experiences we are able to offer our consumers, including fitness and activity apps; sport, fitness and wellness content and services; and digital services and features in retail stores that enhance the consumer experience. Product offerings, technologies, marketing expenditures (including expenditures for advertising and endorsements), pricing, costs of production, customer service, digital commerce platforms, digital services and experiences and social media presence are areas of intense competition. These, in addition to ongoing rapid changes in technology, a reduction in barriers to the creation of new footwear and apparel companies and consumer preferences in the markets for athletic and leisure footwear , apparel, and equipment, services and experiences, constitute significant risk factors in our operations. In addition, the competitive nature of retail, including shifts in the ways in which consumers shop, and the continued proliferation of digital commerce, constitutes a risk factor implicating our NIKE Direct and wholesale operations. If we do not adequately and timely anticipate and respond to our competitors, our costs may increase, demand for our products may decline, possibly significantly , or we may need to reduce wholesale or suggested retail prices for our products. NIKE, INC. 10Economic factors beyond our control, and changes in the global economic environment, including fluctuations in inflation and currency exchange rates, could result in lower revenues, higher costs and decreased margins and earnings. A majority of our products are manufactured and sold outside of the United States, and we conduct purchase and sale transactions in various currencies, which creates exposure to the volatility of global economic conditions, including fluctuations in inflation and foreign currency exchange rates. Central banks may deploy various strategies to combat inflation, including increasing interest rates, which may impact our borrowing costs. Additionally, there has been, and may continue to be, volatility in currency exchange rates that impact the U.S. Dollar value relative to other international currencies. Our international revenues and expenses generally are derived from sales and operations in foreign currencies, and these revenues and expenses are affected by currency fluctuations, specifically amounts recorded in foreign currencies and translated into U.S. Dollars for consolidated financial reporting, as weakening of foreign currencies relative to the U.S . Dollar adversely affects the U.S. Dollar value of the Company's foreign currency-denominated sales and earnings. Currency exchange rate fluctuations could also disrupt the business of the independent manufacturers that produce our products by making their purchases of raw materials more expensive and more difficult to finance. Foreign currency fluctuations have adversely affected and could continue to have an adverse effect on our results of operations and financial condition. We hedge certain foreign currency exposures to lessen and delay, but not to completely eliminate, the effects of foreign currency fluctuations on our financial results. Since the hedging activities are designed to lessen volatility, they not only reduce the negative impact of a stronger U.S. Dollar or other trading currency, but they also reduce the positive impact of a weaker U.S. Dollar or other trading currency. Our future financial results have in the past been and could in the future be significantly affected by the value of the U.S. Dollar in relation to the foreign currencies in which we conduct business. The degree to which our financial results are affected for any given time period will depend in part upon our hedging activities. We may be adversely affected by the financial health of our wholesale customers. We extend credit to our customers based on an assessment of a customer's financial condition, generally without requiring collateral. To assist in the scheduling of production and the shipping of our products, we offer certain customers the opportunity to place orders five to six months ahead of delivery under our futures ordering program. These advance orders may be canceled under certain conditions, and the risk of cancellation increases when dealing with financially unstable retailers or retailers struggling with economic uncertainty. In the past, some customers have experienced financial difficulties up to and including bankruptcies, which have had an adverse effect on our sales, our ability to collect on receivables and our financial condition. When the retail economy weakens or as consumer behavior shifts, retailers tend to be more cautious with orders. A slowing or changing economy in our key markets, including a recession, could adversely af fect the financial health of our customers, which in turn could have an adverse effect on our results of operations and financial condition. In addition, product sales are dependent in part on high quality merchandising and an appealing retail environment to attract consumers, which requires continuing investments by retailers. Retailers that experience financial dif ficulties may fail to make such investments or delay them, resulting in lower sales and orders for our products. Climate change and other sustainability-related matters, or legal, regulatory or market responses thereto, may have an adverse impact on our business and results of operations. There are concerns that increased levels of carbon dioxide and other greenhouse gases in the atmosphere have caused, and may continue to cause, potentially at a growing rate, increases in global temperatures, changes in weather patterns and increasingly frequent and/or prolonged extreme weather and climate events. Climate change may also exacerbate challenges relating to the availability and quality of water and raw materials, including those used in the production of our products, and may result in changes in regulations or consumer preferences, which could in turn af fect our business, operating results and financial condition. For example, there has been increased focus by governmental and non-governmental organizations, consumers, customers, employees and other stakeholders on products that are sustainably made and other sustainability matters, including responsible sourcing and deforestation, the use of plastic, energy and water , the recyclability or recoverability of packaging and materials transparency, any of which may require us to incur increased costs for additional transparency, due diligence and reporting. In addition, federal, state or local governmental authorities in various countries have proposed, and are likely to continue to propose, legislative and regulatory initiatives to reduce or mitigate the impacts of climate change on the environment. Various countries and regions are following different approaches to the regulation of climate change, which could increase the complexity of, and potential cost related to complying with, such regulations. Any of the foregoing may require us to make additional investments in facilities and equipment, may impact the availability and cost of key raw materials used in the production of our products or the demand for our products, and, in turn, may adversely impact our business, operating results and financial condition. Although we have announced sustainability-related goals and targets, there can be no assurance that our stakeholders will agree with our strategies, and any perception, whether or not valid, that we have failed to achieve, or to act responsibly with respect to, such matters or to effectively respond to new or additional legal or regulatory requirements regarding climate change, could result in adverse publicity and adversely affect our business and reputation. Execution of these strategies and achievement of our goals is subject to risks and uncertainties, many of which are outside of our control. These risks and uncertainties include, but are not 2023 FORM 10-K 11 limited to, our ability to execute our strategies and achieve our goals within the currently projected costs and the expected timeframes; the availability and cost of raw materials and renewable energy; unforeseen production, design, operational and technological difficulties; the outcome of research efforts and future technology developments, including the ability to scale projects and technologies on a commercially competitive basis such as carbon sequestration and/or other related processes; compliance with, and changes or additions to, global and regional regulations, taxes, charges, mandates or requirements relating to greenhouse gas emissions, carbon costs or climate-related goals; adapting products to customer preferences and customer acceptance of sustainable supply chain solutions; and the actions of competitors and competitive pressures. As a result, there is no assurance that we will be able to successfully execute our strategies and achieve our sustainability-related goals, which could damage our reputation and customer and other stakeholder relationships and have an adverse ef fect on our business, results of operations and financial condition. Extreme weather conditions and natural disasters could negatively impact our operating results and financial condition. Given the broad and global scope of our operations, we are particularly vulnerable to the physical risks of climate change, such as shifts in weather patterns. Extreme weather conditions in the areas in which our retail stores, suppliers, manufacturers, customers, distribution centers, offices, headquarters and vendors are located could adversely affect our operating results and financial condition. Moreover, natural disasters such as earthquakes, hurricanes, wildfires, tsunamis, floods or droughts, whether occurring in the United States or abroad, and their related consequences and effects, including energy shortages and public health issues, have in the past temporarily disrupted, and could in the future disrupt, our operations, the operations of our vendors, manufacturers and other suppliers or have in the past resulted in, and in the future could result in, economic instability that may negatively impact our operating results and financial condition. In particular , if a natural disaster or severe weather event were to occur in an area in which we or our suppliers, manufacturers, employees, customers, distribution centers or vendors are located, our continued success would depend, in part, on the safety and availability of the relevant personnel and facilities and proper functioning of our or third parties' computer, network, telecommunication and other systems and operations. In addition, a natural disaster or severe weather event could negatively impact retail traf fic to our stores or stores that carry our products and could have an adverse impact on consumer spending, any of which could in turn result in negative point-of-sale trends for our merchandise. Further, climate change may increase both the frequency and severity of extreme weather conditions and natural disasters, which may affect our business operations, either in a particular region or globally, as well as the activities of our third- party vendors and other suppliers, manufacturers and customers. W e believe the diversity of locations in which we operate, our operational size, disaster recovery and business continuity planning and our information technology systems and networks, including the Internet and third-party services ("Information Technology Systems"), position us well, but may not be sufficient for all or for concurrent eventualities. If we were to experience a local or regional disaster or other business continuity event or concurrent events, we could experience operational challenges, in particular depending upon how a local or regional event may affect our human capital across our operations or with regard to particular aspects of our operations, such as key executive officers or personnel. For example, our world headquarters is located in an active seismic zone, which is at a higher risk for earthquakes and the related consequences or effects. Further, if we are unable to find alternative suppliers, replace capacity at key manufacturing or distribution locations or quickly repair damage to our Information Technology Systems or supply systems, we could be late in delivering, or be unable to deliver, products to our customers. These events could result in reputational damage, lost sales, cancellation charges or markdowns, all of which could have an adverse ef fect on our business, results of operations and financial condition. Our financial condition and results of operations have been, and could in the future be, adversely affected by a pandemic, epidemic or other public health emergency. Pandemics, including the COVID-19 pandemic, and other public health emergencies, and preventative measures taken to contain or mitigate such crises have caused, and may in the future cause, business slowdown or shutdown in af fected areas and significant disruption in the financial markets, both globally and in the United S tates. These events have led to and could again lead to adverse impacts to our global supply chain, factory cancellation costs, store closures, and a decline in retail traf fic and discretionary spending by consumers and, in turn, materially impact our business, sales, financial condition and results of operations as well as cause a volatile effective tax rate driven by changes in the mix of earnings across our jurisdictions. We cannot predict whether, and to what degree, our sales, operations and financial results could in the future be affected by the pandemic and preventative measures. Risks presented by pandemics and other public health emergencies include, but are not limited to: •Deterioration in economic conditions in the United States and globally, including the effect of prolonged periods of inflation on our consumers and vendors; •Disruption to our distribution centers, contract manufacturers, finished goods factories and other vendors, through the ef fects of facility closures, increased operating costs, reductions in operating hours, labor shortages, and real time changes in operating procedures, such as additional cleaning and disinfection procedures, which have had, and could in the future again have, a significant impact on our planned inventory production and distribution, including higher inventory levels or inventory shortages in various markets; NIKE, INC. 12•Impacts to our distribution and logistics providers' ability to operate, including labor and container shortages, and increases in their operating costs. These supply chain effects have had, and could in the future have, an adverse effect on our ability to meet consumer demand, including digital demand, and have in the past resulted in and could in the future result in extended inventory transit times and an increase in our costs of production and distribution, including increased freight and logistics costs and other expenses; •Decreased retail traffic as a result of store closures, reduced operating hours, social distancing restrictions and/or changes in consumer behavior; •Reduced consumer demand for our products, including as a result of a rise in unemployment rates, higher costs of borrowing, inflation and diminished consumer confidence; •Cancellation or postponement of sports seasons and sporting events in multiple countries, and bans on large public gatherings, which have reduced and in the future could reduce consumer spending on our products and could impact the effectiveness of our arrangements with key endorsers; •The risk that any safety protocols in NIKE-owned or affiliated facilities, including our offices, will not be effective or not be perceived as effective, or that any virus-related illnesses will be linked or alleged to be linked to such facilities, whether accurate or not; •Incremental costs resulting from the adoption of preventative measures and compliance with regulatory requirements, including providing facial coverings and hand sanitizer, rearranging operations to follow social distancing protocols, conducting temperature checks, testing and undertaking regular and thorough disinfecting of surfaces; •Bankruptcies or other financial difficulties facing our wholesale customers, which could cause them to be unable to make or delay making payments to us, or result in revised payment terms, cancellation or reduction of their orders; and •Significant disruption of and volatility in global financial markets, which could have a negative impact on our ability to access capital in the future. We cannot reasonably predict the ultimate impact of any pandemic or public health emergency, including the extent of any adverse impact on our business, results of operations and financial condition, which will depend on, among other things, the duration and spread of the pandemic or public health emergency, the impact of governmental regulations that have been, and may continue to be, imposed in response, the effectiveness of actions taken to contain or mitigate the outbreak, the availability, safety and efficacy of vaccines, including against emerging variants of the infectious disease, and global economic conditions. Additionally, disruptions have in the past made it more challenging to compare our performance, including our revenue growth and overall profitability, across quarters and fiscal years, and could have this effect in the future. Any pandemic or public health emergency may also affect our business, results of operations or financial condition in a manner that is not presently known to us or that we currently do not consider to present significant risks and may also exacerbate, or occur concurrently with, other risks discussed in this Item 1A. Risk Factors, any of which could have a material effect on us. Business and Operational Risks Failure to maintain our reputation, brand image and culture could negatively impact our business. Our iconic brands have worldwide recognition, and our success depends on our ability to maintain and enhance our brand image and reputation. Maintaining, promoting and growing our brands will depend on our design and marketing ef forts, including advertising and consumer campaigns, product innovation and product quality . Our commitment to product innovation, quality and sustainability, and our continuing investment in design (including materials), marketing and sustainability measures may not have the desired impact on our brand image and reputation. In addition, our success in maintaining, extending and expanding our brand image depends on our ability to adapt to a rapidly changing media and digital environment, including our reliance on social media and other digital advertising networks, and digital dissemination of advertising campaigns on our digital platforms and through our digital experiences and products. We could be adversely impacted if we fail to achieve any of these objectives. Our brand value also depends on our ability to maintain a positive consumer perception of our corporate integrity , purpose and brand culture. Negative claims or publicity involving us, our culture and values, our products, services and experiences, consumer data, or any of our key employees, endorsers, sponsors, suppliers or partners could seriously damage our reputation and brand image, regardless of whether such claims are accurate. For example, while we require our suppliers of our products to operate their business in compliance with applicable laws and regulations, we do not control their practices. Negative publicity relating to a violation or an alleged violation of policies or laws by such suppliers could damage our brand image and diminish consumer trust in our brand. Further, our reputation and brand image could be damaged as a result of our support of, association with or lack of support or disapproval of certain social causes, as well as any decisions we make to continue to conduct, or change, certain of our activities in response to such considerations. S ocial media, which accelerates and potentially amplifies the scope of negative publicity, can increase the challenges of responding to negative claims. Adverse publicity about regulatory or legal action against us, or by us, could also damage our reputation and brand image, undermine consumer confidence in us and reduce long-term demand for our products, even if the regulatory or legal action is unfounded or not material to our operations. If 2023 FORM 10-K 13 the reputation, culture or image of any of our brands is tarnished or if we receive negative publicity , then our sales, financial condition and results of operations could be materially and adversely af fected. Our business is affected by seasonality, which could result in fluctuations in our operating results. We experience moderate fluctuations in aggregate sales volume during the year. Historically, revenues in the first and fourth fiscal quarters have slightly exceeded those in the second and third fiscal quarters. However , the mix of product sales may vary considerably from time to time or in the future as a result of strategic shifts in our business and seasonal or geographic demand for particular types of footwear, apparel and equipment and in connection with the timing of significant sporting events, such as the NBA Finals, Olympics or the World Cup, among others. In addition, our customers may cancel orders, change delivery schedules or change the mix of products ordered with minimal notice. As a result, we may not be able to accurately predict our quarterly sales. Accordingly, our results of operations are likely to fluctuate significantly from period to period. This seasonality, along with other factors that are beyond our control, including economic conditions, changes in consumer preferences, weather conditions, outbreaks of disease, social or political unrest, availability of import quotas, transportation disruptions and currency exchange rate fluctuations, has in the past adversely affected and could in the future adversely affect our business and cause our results of operations to fluctuate. Our operating margins are also sensitive to a number of additional factors that are beyond our control, including manufacturing and transportation costs, shifts in product sales mix and geographic sales trends, all of which we expect to continue. Results of operations in any period should not be considered indicative of the results to be expected for any future period. If we are unable to anticipate consumer preferences and develop new products, we may not be able to maintain or increase our revenues and profits. Our success depends on our ability to identify, originate and define product trends as well as to anticipate, gauge and react to changing consumer demands in a timely manner. However, lead times for many of our products may make it more difficult for us to respond rapidly to new or changing product trends or consumer preferences. All of our products are subject to changing consumer preferences that cannot be predicted with certainty. Our new products may not receive consumer acceptance as consumer preferences could shift rapidly to different types of performance products or away from these types of products altogether, and our future success depends in part on our ability to anticipate and respond to these changes. If we fail to anticipate accurately and respond to trends and shifts in consumer preferences by adjusting the mix of existing product of ferings, developing new products, designs, styles and categories, and influencing sports and fitness preferences through extensive marketing, we could experience lower sales, excess inventories or lower profit margins, any of which could have an adverse effect on our results of operations and financial condition. In addition, we market our products globally through a diverse spectrum of advertising and promotional programs and campaigns, including social media and other digital advertising networks. If we do not successfully market our products or if advertising and promotional costs increase, these factors could have an adverse ef fect on our business, financial condition and results of operations. We rely on technical innovation and high-quality products to compete in the market for our products. Technical innovation and quality control in the design and manufacturing processes of footwear, apparel, equipment and other products and services are essential to the commercial success of our products and development of new products. Research and development play a key role in technical innovation. We rely upon specialists in the fields of biomechanics, chemistry, exercise physiology, engineering, digital technologies, industrial design, sustainability and related fields, as well as research committees and advisory boards made up of athletes, coaches, trainers, equipment managers, orthopedists, podiatrists and other experts to develop and test cutting-edge performance products. While we strive to produce products that help to enhance athletic performance and reduce injury and maximize comfort, if we fail to introduce technical innovation in our products, consumer demand for our products could decline, and if we experience problems with the quality of our products, we may incur substantial expense to remedy the problems and loss of consumer confidence. Failure to continue to obtain or maintain high-quality endorsers of our products could harm our business. We establish relationships with professional athletes, sports teams and leagues, as well as other public figures, including artists, designers and influencers, to develop, evaluate and promote our products, as well as establish product authenticity with consumers. However, as competition in our industry has increased, the costs associated with establishing and retaining such sponsorships and other relationships have increased, and competition to attract and retain high-quality endorsers has increased. If we are unable to maintain our current associations with professional athletes, sports teams and leagues, or other public figures, or to do so at a reasonable cost, we could lose the high visibility or on-field authenticity associated with our products, and we may be required to modify and substantially increase our marketing investments. As a result, our brands, net revenues, expenses and profitability could be harmed. Furthermore, if certain endorsers were to stop using our products contrary to their endorsement agreements, our business could be adversely affected. In addition, actions taken or statements made by athletes, teams or leagues, or other endorsers, associated with our products or brand that harm the reputations of those athletes, teams or leagues, or endorsers, or our decisions to cease collaborating with certain endorsers in light of actions taken or statements made by them, have in the past harmed and could in the future seriously harm our brand image with consumers and, as a result, could have an adverse ef fect on NIKE, INC. 14our sales and financial condition. Poor or non-performance by our endorsers, a failure to continue to correctly identify promising athletes, public figures or sports organizations, to use and endorse our products and brand or a failure to enter into cost-ef fective endorsement arrangements with prominent athletes, public figures and sports organizations could adversely af fect our brand, sales and profitability. Failure to accurately forecast consumer demand could lead to excess inventories or inventory shortages, which could result in decreased operating margins, reduced cash flows and harm to our business. To meet anticipated demand for our products, we purchase products from manufacturers outside of our futures ordering program and in advance of customer orders, which we hold in inventory and resell to customers. There is a risk we may be unable to sell excess products ordered from manufacturers. Inventory levels in excess of customer demand may result in inventory write- downs, and the sale of excess inventory at discounted prices could significantly impair our brand image and have an adverse effect on our operating results, financial condition and cash flows. Conversely, if we underestimate consumer demand for our products or if our manufacturers fail to supply products we require at the time we need them, we may experience inventory shortages. Inventory shortages could delay shipments to customers, negatively impact retailer , distributor and consumer relationships and diminish brand loyalty. The difficulty in forecasting demand also makes it difficult to estimate our future results of operations, financial condition and cash flows from period to period. A failure to accurately predict the level of demand for our products could adversely affect our net revenues and net income, and we are unlikely to forecast such effects with any certainty in advance. Our NIKE Direct operations have required and will continue to require a substantial investment and commitment of resources and are subject to numerous risks and uncertainties. Our NIKE Direct operations, including our retail stores and digital platforms, have required and will continue to require significant investment. Our NIKE Direct stores have required and will continue to require substantial fixed investment in equipment and leasehold improvements and personnel. We have entered into substantial operating lease commitments for retail space. Certain stores have been designed and built to serve as high-profile venues to promote brand awareness and marketing activities and to integrate with our digital platforms. Because of their unique design and technological elements, locations and size, these stores require substantially more investment than other stores. Due to the high fixed-cost structure associated with our NIK E Direct retail stores, a decline in sales, a shift in consumer behavior away from brick-and-mortar retail, or the closure, temporary or otherwise, or poor performance of individual or multiple stores could result in significant lease termination costs, write-of fs of equipment and leasehold improvements and employee-related costs. Many factors unique to retail operations, some of which are beyond our control, pose risks and uncertainties. Risks include, but are not limited to: credit card fraud; mismanagement of existing retail channel partners; inability to manage costs associated with store construction and operation; and theft. In addition, we have made significant investments in digital technologies and information systems for the digital aspect of our NIKE Direct operations, and our digital offerings will require continued investment in the development and upgrading of our technology platforms. In order to deliver high-quality digital experiences, our digital platforms must be designed effectively and work well with a range of other technologies, systems, networks, and standards that we do not control. W e may not be successful in developing platforms that operate effectively with these technologies, systems, networks or standards. A growing portion of consumers access our NIKE Direct digital platforms, but in the event that it is more difficult for consumers to access and use our digital platforms, consumers find that our digital platforms do not ef fectively meet their needs or expectations or consumers choose not to access or use our digital platforms or use devices that do not of fer access to our platforms, the success of our NIKE Direct operations could be adversely impacted. Our competitors may develop, or have already developed, digital experiences, features, content, services or technologies that are similar to ours or that achieve greater acceptance. We may not realize a satisfactory return on our investment in our NIKE Direct operations and management's attention from our other business opportunities could be diverted, which could have an adverse ef fect on our business, financial condition or results of operations. If the technology-based systems that give our consumers the ability to shop or interact with us online do not function effectively, our operating results, as well as our ability to grow our digital commerce business globally or to retain our customer base, could be materially adversely affected. Many of our consumers shop with us through our digital platforms. Increasingly , consumers are using mobile-based devices and applications to shop online with us and with our competitors, and to do comparison shopping, as well as to engage with us and our competitors through digital services and experiences that are of fered on mobile platforms. We use social media and proprietary mobile applications to interact with our consumers and as a means to enhance their shopping experience. Any failure on our part to provide attractive, effective, reliable, secure and user-friendly digital commerce platforms that offer a wide assortment of merchandise with rapid delivery options and that continually meet the changing expectations of online shoppers or any failure to provide attractive digital experiences to our customers could place us at a competitive disadvantage, result in the loss of digital commerce and other sales, harm our reputation with consumers, have a material adverse impact on the growth of our digital commerce business globally and have a material adverse impact on our business and results of operations. In 2023 FORM 10-K 15 addition, as use of our digital platforms continues to grow, we will need an increasing amount of technical infrastructure to continue to satisfy our consumers' needs. If we fail to continue to ef fectively scale and adapt our digital platforms to accommodate increased consumer demand, our business may be subject to interruptions, delays or failures and consumer demand for our products and digital experiences could decline. Risks specific to our digital commerce business also include diversion of sales from our and our retailers' brick and mortar stores, difficulty in recreating the in-store experience through direct channels and liability for online content. Our failure to successfully respond to these risks might adversely affect sales in our digital commerce business, as well as damage our reputation and brands. We rely significantly on information technology to operate our business, including our supply chain and retail operations, and any failure, inadequacy or interruption of that technology could harm our ability to effectively operate our business. We are heavily dependent on Information Technology Systems, across our supply chain, including product design, production, forecasting, ordering, manufacturing, transportation, sales and distribution, as well as for processing financial information for external and internal reporting purposes, retail operations and other business activities. Information Technology Systems are critical to many of our operating activities and our business processes and may be negatively impacted by any service interruption or shutdown. For example, our ability to effectively manage and maintain our inventory and to ship products to customers on a timely basis depends significantly on the reliability of these Information Technology Systems. Over a number of years, we have implemented Information Technology Systems in all of the geographical regions in which we operate. Our work to integrate, secure and enhance these systems and related processes in our global operations is ongoing and NIK E will continue to invest in these efforts. We cannot provide assurance, however, that the measures we take to secure and enhance these systems will be sufficient to protect our Information Technology Systems and prevent cyber-attacks, system failures or data or information loss. The failure of these systems to operate effectively, including as a result of security breaches, viruses, hackers, malware, natural disasters, vendor business interruptions or other causes, failure to properly maintain, protect, repair or upgrade systems, or problems with transitioning to upgraded or replacement systems could cause delays in product fulfillment and reduced efficiency of our operations, could require significant capital investments to remediate the problem which may not be sufficient to cover all eventualities, and may have an adverse effect on our reputation, results of operations and financial condition. In addition, the use of employee-owned devices for communications as well as hybrid work arrangements, present additional operational risks to our Information Technology Systems, including, but not limited to, increased risks of cyber-attacks. Further, like other companies in the retail industry, we have in the past experienced, and we expect to continue to experience, cyber- attacks, including phishing, and other attempts to breach, or gain unauthorized access to, our systems. To date, these attacks have not had a material impact on our operations, but we cannot provide assurance that they will not have an impact in the future. We also use Information Technology Systems to process financial information and results of operations for internal reporting purposes and to comply with regulatory financial reporting, legal and tax requirements. From time to time, we have expended, and expect to continue to expend, significant resources to modify , update and enhance our Information Technology Systems and to investigate and remediate vulnerabilities or other exposures. These modifications, updates and enhancements may cost more than initially expected and may not be effective in preventing issues and disruptions. Moreover, due to the complexity of our Information Technology Systems, the process of implementing modifications or enhancements can itself create a risk of systems disruptions and security issues. If Information Technology Systems suffer severe damage, disruption or shutdown and our business continuity plans, or those of our vendors, do not effectively resolve the issues in a timely manner, we could experience delays in reporting our financial results, which could result in lost revenues and profits, as well as reputational damage. Furthermore, we depend on Information Technology Systems and personal data collection for digital marketing, digital commerce, consumer engagement and the marketing and use of our digital products and services. W e also rely on our ability to engage in electronic communications throughout the world between and among our employees as well as with other third parties, including customers, suppliers, vendors and consumers. Any interruption in Information Technology Systems may impede our ability to engage in the digital space and result in lost revenues, damage to our reputation, and loss of users. We are subject to the risk our licensees may not generate expected sales or maintain the value of our brands. We currently license, and expect to continue licensing, certain of our proprietary rights, such as trademarks or copyrighted material, to third parties. If our licensees fail to successfully market and sell licensed products, or fail to obtain suf ficient capital or effectively manage their business operations, customer relationships, labor relationships, supplier relationships or credit risks, it could adversely affect our revenues, both directly from reduced royalties received and indirectly from reduced sales of our other products. We also rely on our licensees to help preserve the value of our brands. Although we attempt to protect our brands through approval rights over the design, production processes, quality, packaging, merchandising, distribution, advertising and promotion of our licensed products, we cannot completely control the use of our licensed brands by our licensees. The misuse of a brand by or negative publicity involving a licensee could have a material adverse ef fect on that brand and on us. NIKE, INC. 16Consolidation of retailers or concentration of retail market share among a few retailers may increase and concentrate our credit risk and impair our ability to sell products. The athletic footwear, apparel and equipment retail markets in some countries are dominated by a few large athletic footwear, apparel and equipment retailers with many stores and accelerating digital commerce capabilities. The market shares of these retailers may increase through acquisitions and construction of additional stores and investments in digital capacity , and as a result of attrition as struggling retailers exit the market. Consolidation of our retailers will concentrate our credit risk with a smaller set of retailers, any of whom may experience declining sales or a shortage of liquidity . In addition, increasing market share concentration among a few retailers in a particular country or region increases the risk that if any one of them substantially reduces their purchases of our products, we may be unable to find suf ficient retail outlets for our products to sustain the same level of sales and revenues. If one or more of our counterparty financial institutions default on their obligations to us or fail, we may incur significant losses. As part of our hedging activities, we enter into transactions involving derivative financial instruments, which may include forward contracts, commodity futures contracts, option contracts, collars and swaps with various financial institutions. In addition, we have significant amounts of cash, cash equivalents and other investments on deposit or in accounts with banks or other financial institutions in the United States and abroad. As a result, we are exposed to the risk of default by or failure of counterparty financial institutions. The risk of counterparty default or failure may be heightened during economic downturns and periods of uncertainty in the financial markets. If one of our counterparties were to become insolvent or file for bankruptcy , our ability to recover losses incurred as a result of default, or our assets deposited or held in accounts with such counterparty , may be limited by the counterparty's liquidity or the applicable laws governing the insolvency or bankruptcy proceedings. In the event of default or failure of one or more of our counterparties, we could incur significant losses, which could negatively impact our results of operations and financial condition. We rely on a concentrated source base of contract manufacturers to supply a significant portion of our footwear products. As of May 31, 2023, our contract manufacturers operated 123 finished goods footwear factories located in 11 countries. We rely upon contract manufacturers, which we do not own or operate, to manufacture all of the footwear products we sell. For fiscal 2023, four footwear contract manufacturers each accounted for greater than 10% of footwear production and in the aggregate accounted for approximately 58% of NIKE Brand footwear production. Our ability to meet our customers' needs depends on our ability to maintain a steady supply of products from our contract manufacturers. If one or more of our significant suppliers were to sever their relationship with us or significantly alter the terms of our relationship, including due to changes in applicable trade policies, or be unable to perform, we may not be able to obtain replacement products in a timely manner , which could have a material adverse effect on our business operations, sales, financial condition or results of operations. Additionally, if any of our primary footwear contract manufacturers fail to make timely shipments, do not meet our quality standards or otherwise fail to deliver us product in accordance with our plans, there could be a material adverse ef fect on our results of operations. Certain of our footwear contract manufacturers are highly specialized and only produce a specific type of product . Such contract manufacturers may go out of business if consumer preferences or market conditions change such that there is no longer sufficient demand for the types of products they produce. If, in the future, the relevant products are again in demand and the specialized contract manufacturers no longer exist, we may not be able to locate replacement facilities to manufacture certain footwear products in a timely manner or at all, which could have a material adverse ef fect on our sales, financial condition or results of operations. The market for prime real estate is competitive. Our ability to effectively obtain real estate to open new retail stores and otherwise conduct our operations, both domestically and internationally, depends on the availability of real estate that meets our criteria for traffic, square footage, co-tenancies, lease economics, demographics and other factors. We also must be able to effectively renew our existing real estate leases. In addition, from time to time, we seek to downsize, consolidate, reposition or close some of our real estate locations, which may require modification of an existing lease. Failure to secure adequate new locations or successfully modify leases for existing locations, or failure to effectively manage the profitability of our existing fleet of retail stores, could have an adverse effect on our operating results and financial condition. Additionally, the economic environment may make it difficult to determine the fair market rent of real estate properties domestically and internationally. This could impact the quality of our decisions to exercise lease options at previously negotiated rents and to renew expiring leases at negotiated rents. Any adverse effect on the quality of these decisions could impact our ability to retain real estate locations adequate to meet our targets or ef ficiently manage the profitability of our existing fleet of stores, which could have an adverse effect on our operating results and financial condition. 2023 FORM 10-K 17 The success of our business depends, in part, on high-quality employees, including key personnel as well as our ability to maintain our workplace culture and values. Our success depends in part on the continued service of high-quality employees, including key executive of ficers and personnel. The loss of the services of key individuals, or any negative perception with respect to these individuals, or our workplace culture or values, could harm our business. Our success also depends on our ability to recruit, retain and engage our personnel sufficiently, both to maintain our current business and to execute our strategic initiatives. Competition for employees in our industry is intense and we may not be successful in attracting and retaining such personnel. Changes to our current and future work models may not meet the needs or expectations of our employees or may not be perceived as favorable compared to other companies' policies, which could negatively impact our ability to attract, hire and retain our employees. In addition, shifts in U.S . immigration policy could negatively impact our ability to attract, hire and retain highly skilled employees who are from outside the United States. We also believe that our corporate culture has been a key driver of our success, and we have invested substantial time and resources in building, maintaining and evolving our culture. Any failure to preserve and evolve our culture could negatively affect our future success, including our ability to retain and recruit employees. Our business operations and financial performance could be adversely affected by changes in our relationship with our workforce or changes to United States or foreign employment regulations. We have significant exposure to changes in domestic and foreign laws governing our relationships with our workforce, including wage and hour laws and regulations, fair labor standards, minimum wage requirements, overtime pay , unemployment tax rates, workers' compensation rates, citizenship requirements and payroll taxes, which could have a direct impact on our operating costs. A significant increase in minimum wage or overtime rates in countries where we have workforce could have a significant impact on our operating costs and may require that we relocate those operations or take other steps to mitigate such increases, all of which may cause us to incur additional costs. There is also a risk of potential claims that we have violated laws related to discrimination and harassment, health and safety, wage and hour laws, criminal activity, personal injury and other claims. In addition, if there were a significant increase in the number of members of our workforce who are members of labor organizations or become parties to collective bargaining agreements, we could be vulnerable to a strike, work stoppage or other labor action, which could have an adverse effect on our business. Risks Related to Operating a Global Business Our international operations involve inherent risks which could result in harm to our business. Nearly all of our athletic footwear and apparel is manufactured outside of the United States, and the majority of our products are sold outside of the United States. Accordingly, we are subject to the risks generally associated with global trade and doing business abroad, which include foreign laws and regulations, varying consumer preferences across geographic regions, political tensions, unrest, disruptions or delays in cross-border shipments and changes in economic conditions in countries in which our products are manufactured or where we sell products. Changes in U.S . or international social, political, regulatory and economic conditions could impact our business, reputation, financial condition and results of operations. In particular , political and economic instability, geopolitical conflicts, political unrest, civil strife, terrorist activity, acts of war, public corruption, expropriation, nationalism and other economic or political uncertainties in the United S tates or internationally could interrupt and negatively affect the sale of our products or other business operations. Any negative sentiment toward the United States as a result of any such changes could also adversely affect our business. In addition, disease outbreaks, terrorist acts and military conflict have increased the risks of doing business abroad. These factors, among others, could affect our ability to manufacture products or procure materials, or our costs for manufacturing and procuring materials, our ability to import products, our ability to sell products in international markets and our cost of doing business. If any of these or other factors make the conduct of business in a particular country undesirable or impractical, our business could be adversely affected. Our products are subject to risks associated with overseas sourcing, manufacturing and financing. The principal materials used in our footwear products — natural and synthetic rubber , plastic compounds, foam cushioning materials, natural and synthetic leather, nylon, polyester and natural fiber textiles and polyurethane films — are locally available to manufacturers. The principal materials used in our apparel products — natural and synthetic fabrics, yarns and threads (both virgin and recycled), specialized performance fabrics designed to ef ficiently wick moisture away from the body, retain heat and repel rain and/or snow as well as plastic and metal hardware — are also available in countries where our manufacturing takes place. Both our apparel and footwear products are dependent upon the ability of our contract manufacturers to locate, train, employ and retain adequate personnel. NIKE contract manufacturers and materials suppliers buy raw materials and are subject to wage rates and other labor standards that are oftentimes regulated by the governments of the countries in which our products are manufactured. There could be a significant disruption in the supply of fabrics or raw materials from current sources or , in the event of a disruption or heightened competition for such materials, our contract manufacturers might not be able to locate alternative suppliers of materials of comparable quality at an acceptable price or at all. Further , our contract manufacturers have experienced and may continue to experience in the future, unexpected closures, unexpected increases in work wages or other NIKE, INC. 18changes in labor standards, whether government mandated or otherwise, and increases in compliance costs due to governmental regulation concerning certain metals, fabrics or raw materials used in the manufacturing of our products. In addition, we cannot be certain that manufacturers that we do not contract and that we refer to as "unaffiliated manufacturers" will be able to fill our orders in a timely manner. If we experience significant increases in demand, or reductions in the availability of materials, or need to replace an existing contract manufacturer or materials supplier , there can be no assurance additional supplies of fabrics or raw materials or additional manufacturing capacity will be available when required on terms acceptable to us, or at all, or that any contract manufacturer, unaffiliated manufacturer, or any materials supplier would allocate sufficient capacity to us in order to meet our requirements. In addition, even if we are able to expand existing or find new manufacturing capacity or sources of materials, we may encounter delays in production and added costs as a result of the time it takes to train suppliers and manufacturers in our methods, products, quality control standards and labor , health and safety standards. Any delays, interruption or increased costs in labor or wages, in the supply of materials or in the manufacturing of our products could have an adverse effect on our ability to meet retail customer and consumer demand for our products and result in lower revenues and net income both in the short- and long-term. Because contract manufacturers make a majority of our products outside of our principal sales markets, our products must be transported by third parties over large geographic distances. Delays in the shipment or delivery of our products due to the availability of transportation, container shortages, labor shortages, including work stoppages or port strikes, infrastructure and port congestion or other factors, and costs and delays associated with consolidating or transitioning between manufacturers, have adversely impacted, and could in the future adversely impact the availability of our products and, in turn, our financial performance. In addition, delays in the shipment or delivery of our products, manufacturing delays or unexpected demand for our products have required us, and may in the future require us to use faster , but more expensive, transportation methods such as air freight, which could adversely affect our profit margins. The cost of oil is a significant component in manufacturing and transportation costs, so increases in the price of petroleum products can adversely af fect our profit margins. Changes in U.S. trade policies, including modifications to import tariffs and existing trade policies and agreements, have also had, and could continue to have a significant impact on our activities in foreign jurisdictions, and could adversely af fect our reputation or results of operations. Our success depends on our global distribution facilities. We distribute our products to customers directly from the factory and through distribution centers located throughout the world. Our ability to meet customer expectations, manage inventory, complete sales and achieve objectives for operating efficiencies and growth, particularly in emerging markets, depends on the proper operation of our distribution facilities, the development or expansion of additional distribution capabilities and the timely performance of services by third parties (including those involved in shipping product to and from our distribution facilities). Our distribution facilities have in the past and could in the future be interrupted by information technology problems, disasters such as earthquakes or fires or outbreaks of disease or government actions taken to mitigate their spread. Any significant failure in our distribution facilities could result in an adverse effect on our business. We maintain business interruption insurance, but it may not adequately protect us from adverse effects caused by significant disruptions in our distribution facilities. Legal, Regulatory, and Compliance Risks We are subject to a complex array of laws and regulations and litigation and other legal and regulatory proceedings, which could have an adverse effect on our business, financial condition and results of operations. As a multinational corporation with operations and distribution channels throughout the world, we are subject to and must comply with extensive laws and regulations in the United States and other jurisdictions in which we have operations and distribution channels. If we or our employees, agents, suppliers, and other partners fail to comply with any of these laws or regulations, such failure could subject us to fines, sanctions or other penalties that could negatively af fect our reputation, business, financial condition and results of operations. Furthermore, laws, regulations and policies and the interpretation of such, can conflict among jurisdictions and compliance in one jurisdiction may result in legal or reputational risks in another jurisdiction. W e are involved in various types of claims, lawsuits, regulatory proceedings and government investigations relating to our business, our products and the actions of our employees and representatives, including contractual and employment relationships, product liability , antitrust, trademark rights and a variety of other matters. It is not possible to predict with certainty the outcome of any such legal or regulatory proceedings or investigations, and we could in the future incur judgments, fines or penalties, or enter into settlements of lawsuits and claims that could have a material adverse ef fect on our business, financial condition and results of operations and negatively impact our reputation. The global nature of our business means legal and compliance risks, such as anti-bribery, anti-corruption, fraud, trade, environmental, competition, privacy and other regulatory matters, will continue to exist and additional legal proceedings and other contingencies have and will continue to arise from time to time, which could adversely affect us. In addition, the adoption of new laws or regulations, or changes in the interpretation of existing laws or regulations, may result in significant unanticipated legal and reputational risks. Moreover , the regulation of certain transactions we engage in, including those involving virtual goods and cryptocurrencies, remains in an early stage and subject to significant uncertainty . As a result, we are required to exercise our judgment as to whether or how certain laws or regulations apply , or may in the future 2023 FORM 10-K 19 apply, and it is possible that legislators, regulators and courts may disagree with our conclusions. Any current or future legal or regulatory proceedings could divert management's attention from our operations and result in substantial legal fees. Changes to U.S. or other countries' trade policies and tariff and import/export regulations or our failure to comply with such regulations may have a material adverse effect on our reputation, business, financial condition and results of operations. Changes in the U.S. government's import and export policies, including trade restrictions, sanctions and countersanctions, increased tariffs or quotas, embargoes, safeguards or customs restrictions, could require us to change the way we conduct business and adversely affect our results of operations. In addition, changes in laws and policies governing foreign trade, manufacturing, development and investment in the territories or countries where we currently sell our products or conduct our business could adversely af fect our business. U.S. presidential administrations have instituted or proposed changes in trade policies that include the negotiation or termination of trade agreements, the imposition of higher tariffs on imports into the U.S., economic sanctions on individuals, corporations or countries, and other government regulations affecting trade between the U.S. and other countries where we conduct our business. It may be time-consuming and expensive for us to alter our business operations in order to adapt to or comply with any such changes. Changes or proposed changes in U.S. or other countries' trade policies may result in restrictions and economic disincentives on international trade. Tariffs and other changes in U.S. trade policy have in the past and could in the future trigger retaliatory actions by affected countries, and certain foreign governments have instituted or are considering imposing retaliatory measures on certain U.S. goods. Further, any emerging protectionist or nationalist trends either in the United States or in other countries could affect the trade environment. The Company, similar to many other multinational corporations, does a significant amount of business that would be impacted by changes to the trade policies of the United S tates and foreign countries (including governmental action related to tariffs, international trade agreements, or economic sanctions). Such changes have the potential to adversely impact the U.S. economy or certain sectors thereof or the economy of another country in which we conduct operations, our industry and the global demand for our products, and as a result, could have a material adverse ef fect on our business, financial condition and results of operations. In addition, many of our imported products are subject to duties, tarif fs or quotas that affect the cost and quantity of various types of goods imported into the United States and other countries. Any country in which our products are produced or sold may eliminate, adjust or impose new quotas, duties, tariffs, safeguard measures, anti-dumping duties, cargo restrictions to prevent terrorism, restrictions on the transfer of currency, climate change legislation, product safety regulations or other charges or restrictions, any of which could have an adverse effect on our results of operations and financial condition. Furthermore, we are subject to the FCPA as well as the anti-corruption laws of other countries in which we operate. Although we implement policies and procedures designed to promote compliance with these laws, our employees, independent contractors, contract manufacturers, suppliers and agents, as well as those companies to which we outsource certain of our business operations, may take actions in violation of our policies. Any such violation could result in sanctions or other penalties and have an adverse effect on our business, reputation and operating results. Failure to adequately protect or enforce our intellectual property rights could adversely affect our business. We periodically discover counterfeit reproductions of our products or products that otherwise infringe our intellectual property rights. If we are unsuccessful in enforcing our intellectual property rights, continued sales of these products could adversely af fect our sales and our brand and could result in a shift of consumer preference away from our products. The actions we take to establish and protect our intellectual property rights may not be adequate to prevent imitation of our products by others. We also may be unable to prevent others from seeking to block sales of our products as violations of proprietary rights. We may be subject to liability if third parties successfully claim we infringe their intellectual property rights. Defending infringement claims could be expensive and time-consuming and might result in our entering into costly license agreements. W e also may be subject to significant damages or injunctions against development, manufacturing, use, importation and/or sale of certain products. We take various actions to prevent the unauthorized use and/or disclosure of our confidential information and intellectual property rights. These actions include contractual measures such as entering into non-disclosure and non-compete agreements and agreements relating to our collaborations with third parties and providing confidential information awareness training. Our controls and efforts to prevent unauthorized use and/or disclosure of confidential information and intellectual property rights might not always be effective. For example, confidential information related to business strategy, innovations, new technologies, mergers and acquisitions, unpublished financial results or personal data could be prematurely , inadvertently, or improperly used and/or disclosed, resulting in a loss of reputation, loss of intellectual property rights, a decline in our stock price and/or a negative impact on our market position, and could lead to damages, fines, penalties or injunctions. In addition, new products we of fer, such as virtual goods, may raise various novel intellectual property law considerations, including adequacy and scope of assignment, licensing, transfer, copyright and other right-of-use issues. NIKE, INC. 20In addition, the laws of certain countries may not protect or allow enforcement of intellectual property rights to the same extent as the laws of the United States. We may face significant expenses and liability in connection with the protection of our intellectual property rights, including outside the United States, and if we are unable to successfully protect our rights or resolve intellectual property conflicts with others, our business or financial condition may be adversely af fected. We are subject to data security and privacy risks that could negatively affect our results, operations or reputation. In addition to our own sensitive and proprietary business information, we handle transactional and personal information about our wholesale customers and consumers and users of our digital experiences, which include online distribution channels and product engagement, adaptive products and personal fitness applications. Hackers and data thieves are increasingly sophisticated and operate social engineering, such as phishing, and large-scale, complex automated attacks that can evade detection for long periods of time. Any breach of our or our service providers' networks, or other vendor systems, may result in the loss of confidential business and financial data, misappropriation of our consumers', users' or employees' personal information or a disruption of our business. Any of these outcomes could have a material adverse effect on our business, including unwanted media attention, impairment of our consumer and customer relationships, damage to our reputation; resulting in lost sales and consumers, fines, lawsuits, or significant legal and remediation expenses. W e also may need to expend significant resources to protect against, respond to and/or redress problems caused by any breach. In addition, we must comply with increasingly complex and rigorous, and sometimes conflicting, regulatory standards enacted to protect business and personal data in the United States, Europe and elsewhere. For example, the European Union adopted the General Data Protection Regulation (the "GDPR"); the United Kingdom enacted the UK General Data Protection Regulation (which implements the GDPR into UK law); several states in the United States have passed data privacy laws; China enacted the Data Security Law and Personal Information Protection Law; and additional jurisdictions have adopted or are considering proposing or adopting similar regulations. These laws impose additional obligations on companies regarding the handling of personal data and provide certain individual privacy rights to persons whose data is stored. Compliance with existing, proposed and recently enacted laws and regulations can be costly and time consuming, and any failure to comply with these regulatory standards could subject us to legal, operational and reputational risks. Misuse of or failure to secure personal information could also result in violation of data privacy laws and regulations, proceedings against the Company by governmental entities or others, imposition of fines by governmental authorities and damage to our reputation and credibility and could have a negative impact on revenues and profits. We could be subject to changes in tax rates, adoption of new tax laws, additional tax liabilities or increased volatility in our effective tax rate. We earn a substantial portion of our income in foreign countries and, as such, we are subject to the tax laws in the United States and numerous foreign jurisdictions. Current economic and political conditions make tax laws and regulations, or their interpretation and application, in any jurisdiction subject to significant change. Proposals to reform U.S. and foreign tax laws could significantly impact how U.S. multinational corporations are taxed on global earnings and could increase the U.S. corporate tax rate. For example, the Organization for Economic Co-operation and Development (OECD) and the G20 Inclusive Framework on Base Erosion and Profit Shifting (the "Inclusive Framework") has put forth two proposals—Pillar One and Pillar Two—that revise the existing profit allocation and nexus rules and ensure a minimal level of taxation, respectively. On December 12, 2022, the European Union member states agreed to implement the Inclusive Framework's global corporate minimum tax rate of 15%. Other countries are also actively considering changes to their tax laws to adopt certain parts of the Inclusive Framework's proposals. Although we cannot predict whether or in what form these proposals will be enacted into law, these changes, if enacted into law, could have an adverse impact on our effective tax rate, income tax expense and cash flows. Portions of our operations are subject to a reduced tax rate or are under a tax holiday. We also utilize tax rulings and other agreements to obtain certainty in treatment of certain tax matters. Tax holidays and rulings can expire from time to time and may be extended when certain conditions are met, or terminated if certain conditions are not met. The impact of any changes in conditions would be the loss of certainty in treatment thus potentially impacting our ef fective income tax rate. For example, in January 2019, the European Commission opened a formal investigation to examine whether the Netherlands has breached State Aid rules when granting certain tax rulings to the Company. If this matter is adversely resolved, the Netherlands may be required to assess additional amounts with respect to prior periods, and the Company's income taxes related to prior periods in the Netherlands could increase. We are also subject to the examination of our tax returns by the United States Internal Revenue Service ("IRS") and other tax authorities. We regularly assess the likelihood of an adverse outcome resulting from these examinations to determine the adequacy of our provision for income taxes. Although we believe our tax provisions are adequate, the final determination of tax audits and any related disputes could be materially different from our historical income tax provisions and accruals. The results of audits or related disputes could have an adverse effect on our financial statements for the period or periods for which the applicable final determinations are made. For example, we and our subsidiaries are also engaged in a number of intercompany transactions across multiple tax jurisdictions. Although we believe we have clearly reflected the economics of these transactions 2023 FORM 10-K 21 and the proper local transfer pricing documentation is in place, tax authorities may propose and sustain adjustments that could result in changes that may impact our mix of earnings in countries with dif fering statutory tax rates. Failure of our contractors or our licensees' contractors to comply with our code of conduct, local laws and other standards could harm our business. We have license agreements that permit independent parties to manufacture or contract for the manufacture of products using our intellectual property. We require the contractors that directly manufacture our products and our licensees that make products using our intellectual property (including, indirectly, their contract manufacturers) to comply with a code of conduct and other environmental, human rights, health and safety standards for the benefit of workers. W e also require our contract manufacturers and the contractors of our licensees to comply with applicable standards for product safety . Notwithstanding their contractual obligations, from time to time contractors may not comply with such standards or applicable local law or our licensees may fail to enforce such standards or applicable local law on their contractors. If one or more of our direct or indirect contractors violates or fails to comply with, or is accused of violating or failing to comply with, such standards and laws, this could harm our reputation or result in a product recall and, as a result, could have an adverse ef fect on our sales and financial condition. Negative publicity regarding production methods, alleged unethical or illegal practices or workplace or related conditions of any of our suppliers, manufacturers or licensees could adversely affect our brand image and sales, force us to locate alternative suppliers, manufacturers or licenses or result in the imposition of additional regulations, including new or additional quotas, tarif fs, sanctions, product safety regulations or other regulatory measures, by governmental authorities. Risks Related to Our Securities, Investments and Liquidity Our financial results may be adversely affected if substantial investments in businesses and operations fail to produce expected returns. From time to time, we may invest in technology, business infrastructure, new businesses or capabilities, product offering and manufacturing innovation and expansion of existing businesses, such as our NIK E Direct operations, which require substantial cash investments and management attention. We believe cost-effective investments are essential to business growth and profitability; however, significant investments are subject to typical risks and uncertainties inherent in developing a new business or expanding an existing business. The failure of any significant investment to provide expected returns or profitability could have a material adverse effect on our financial results and divert management attention from more profitable business operations. See also " Our NIKE Direct operations have required and will continue to require a substantial investment and commitment of resources and are subject to numerous risks and uncertainties ." The sale of a large number of shares of common stock by our principal shareholder could depress the market price of our common stock. As of June 30, 2023, Swoosh, LLC beneficially owned approximately 77% of our Class A Common Stock. If, on June 30, 2023, all of these shares were converted into Class B Common Stock, Swoosh, LLC's commensurate ownership percentage of our Class B Common Stock would be approximately 16%. The shares are available for resale, subject to the requirements of the U.S. securities laws and the terms of the limited liability company agreement governing S woosh, LLC. The sale or prospect of a sale of a substantial number of these shares could have an adverse effect on the market price of our common stock. Swoosh, LLC was formed by Philip H. Knight, our Chairman Emeritus, to hold the majority of his shares of Class A Common Stock. Mr. Knight does not have voting rights with respect to Swoosh, LLC, although Travis Knight, his son and a NIKE director, has a significant role in the management of the Class A Common Stock owned by Swoosh, LLC. Changes in our credit ratings or macroeconomic conditions may affect our liquidity, increasing borrowing costs and limiting our financing options. Our long-term debt is currently rated Investment Grade by Standard & Poor's and Moody's Investors Service. If our credit ratings are lowered, borrowing costs for our existing facilities or for future long-term debt or short-term credit facilities may increase and our financing options, including our access to credit or capital markets, could be adversely af fected. We may also be subject to restrictive covenants that would reduce our flexibility to, among other things, incur additional indebtedness, make restricted payments, pledge assets as security, make investments, loans, advances, guarantees and acquisitions, undergo fundamental changes and enter into transactions with affiliates. Failure to comply with such covenants could result in a default, and as a result, the commitments of our lenders under our credit agreements may be terminated and the maturity of amounts owed may be accelerated. In addition, macroeconomic conditions, such as increased volatility or disruption in the credit or capital markets, could adversely affect our ability to refinance existing debt. If our internal controls are ineffective, our operating results could be adversely affected. Our internal control over financial reporting may not prevent or detect misstatements because of its inherent limitations, including the possibility of human error, the circumvention or overriding of controls or fraud. Even effective internal controls can provide only reasonable assurance with respect to the preparation and fair presentation of financial statements. If we fail to maintain the adequacy of our internal controls, including any failure to implement required new or improved controls, or if we experience NIKE, INC. 22difficulties in their implementation, our business and operating results could be harmed and we could fail to meet our financial reporting obligations. If our estimates or judgments relating to our critical accounting estimates prove to be incorrect, our operating results could be adversely affected. The preparation of financial statements in conformity with accounting principles generally accepted in the United S tates requires management to make estimates and assumptions that affect the amounts reported in the consolidated financial statements and accompanying notes. We base our estimates on historical experience and on various other assumptions we believe to be reasonable under the circumstances, as provided in "Management's Discussion and Analysis of Financial Condition and Results of Operations". The results of these estimates form the basis for making judgments about the carrying values of assets, liabilities and equity, and the amount of revenues and expenses that are not readily apparent from other sources. Significant assumptions and estimates used in preparing our consolidated financial statements include those related to revenue recognition, inventory reserves, hedge accounting for derivatives, income taxes and other contingencies. Our operating results may be adversely affected if our assumptions change or if actual circumstances differ from those in our assumptions, which could cause our operating results to fall below the expectations of securities analysts and investors, resulting in a decline in the price of our Class B Common Stock. Anti-takeover provisions may impair an acquisition of the Company or reduce the price of our common stock. There are provisions within our articles of incorporation and Oregon law intended to protect shareholder interests by providing the Board of Directors a means to attempt to deny coercive takeover attempts or to negotiate with a potential acquirer in order to obtain more favorable terms. Such provisions include a control share acquisition statute, a freeze-out statute, two classes of stock that vote separately on certain issues, and the fact that holders of Class A Common Stock elect three-quarters of the Board of Directors rounded down to the next whole number. However, such provisions could discourage, delay or prevent an unsolicited merger, acquisition or other change in control of the Company that some shareholders might believe to be in their best interests or in which shareholders might receive a premium for their common stock over the prevailing market price. These provisions could also discourage proxy contests for control of the Company. We may fail to meet market expectations, which could cause the price of our stock to decline. Our Class B Common Stock is traded publicly, and at any given time various securities analysts follow our financial results and issue reports on us. These reports include information about our historical financial results as well as analysts' opinions of our future performance, which may, in part, be based upon any guidance we have provided. Analysts' estimates are often different from our estimates or expectations. If our operating results are below the estimates or expectations of public market analysts and investors, our stock price could decline. In the past, securities class action litigation has been brought against NIK E and other companies following a decline in the market price of their securities. If our stock price is volatile for any reason, we may become involved in this type of litigation in the future. Any litigation could result in reputational damage, substantial costs and a diversion of management's attention and resources needed to successfully run our business. 2023 FORM 10-K 23 ITEM 1B. UNRESOLVED STAFF COMMENTS None. ITEM 2. PROPERTIES The following is a summary of principal properties owned or leased by NIK E: The NIKE World Campus, owned by NIKE and located near Beaverton, Oregon, USA, is an approximately 400-acre site consisting of over 40 buildings which, together with adjacent leased properties, functions as our world headquarters and is occupied by approximately 11,400 employees engaged in management, research, design, development, marketing, finance and other administrative functions serving nearly all of our segments. W e lease a similar, but smaller, administrative facility in Hilversum, the Netherlands, which serves as the headquarters for our E urope, Middle East & Africa geography and management of certain brand functions for our non-U.S. operations. We also lease an office complex in Shanghai, China, our headquarters for our Greater China geography, occupied by employees focused on implementing our wholesale, NIKE Direct and merchandising strategies in the region, among other functions. In the United States, NIKE has eight significant distribution centers. Five are located in or near Memphis, Tennessee, two of which are owned and three of which are leased. Two other distribution centers, one located in Indianapolis, Indiana and one located in Dayton, Tennessee, are leased and operated by third-party logistics providers. One distribution center for Converse is located in Ontario, California, which is leased. NIKE has a number of distribution facilities outside the United States, some of which are leased and operated by third-party logistics providers. The most significant distribution facilities outside the United States are located in Laakdal, Belgium; Taicang, China; Tomisato, Japan and Icheon, Korea, all of which we own. Air Manufacturing Innovation manufactures cushioning components used in footwear at NIKE-owned and leased facilities located near Beaverton, Oregon, and in Dong Nai Province, Vietnam, as well as at NIKE-owned facilities in St. Charles, Missouri. Aside from the principal properties described above, we lease many offices worldwide for sales and administrative purposes. We lease approximately 1,027 retail stores worldwide, which primarily consist of factory stores. See "United States Market" and "International Markets" for additional information regarding our retail stores. Our leases expire at various dates through the fiscal year 2052. ITEM 3. LEGAL PROCEEDINGS We do not believe there are any material pending legal proceedings, other than ordinary routine litigation incidental to our business, to which we are a party or of which any of our property is the subject. Refer to Note 16 — Commitments and Contingencies in the accompanying Notes to the Consolidated Financial Statements for further information. ITEM 4. MINE SAFETY DISCLOSURES Not applicable. NIKE, INC. 24PART II ITEM 5. MARKET FOR REGISTRANT'S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES NIKE's Class B Common Stock is listed on the New York Stock Exchange and trades under the symbol NKE. At July 12, 2023, there were 21,813 holders of record of NIKE's Class B Common Stock and 15 holders of record of NIKE's Class A Common Stock. These figures do not include beneficial owners who hold shares in nominee name. The Class A Common Stock is not publicly traded, but each share is convertible upon request of the holder into one share of Class B Common Stock. Refer to our Consolidated Statements of Shareholders' Equity for dividends declared on the Class A and Class B Common Stock. In August 2022, the Company terminated the previous four-year, $15 billion share repurchase program approved by the Board of Directors in June 2018. Prior to the program's termination, the Company purchased 6.5 million shares at an average price of $109.85 per share for a total approximate cost of $710.0 million during the first quarter of fiscal 2023 and 83.8 million shares at an average price of $111.82 per share for a total approximate cost of $9.4 billion during the term of this program. Upon termination of the $15 billion program, the Company began purchasing shares under a new four-year , $18 billion share repurchase program authorized by the Board of Directors in June 2022. As of May 31, 2023, the Company had repurchased 43.5 million shares at an average price of $110.38 per share for a total approximate cost of $4.8 billion under the new program. Repurchases under the Company's new program will be made in open market or privately negotiated transactions in compliance with the Securities and Exchange Commission Rule 10b-18, subject to market conditions, applicable legal requirements and other relevant factors. The new share repurchase program does not obligate the Company to acquire any particular amount of common stock, and it may be suspended at any time at the Company's discretion. All share repurchases were made under NIKE's publicly announced program, and there are no other programs under which the Company repurchases shares. The following table presents a summary of share repurchases made during the quarter ended May 31, 2023: PERIODTOTAL NUMBER OF SHARES PURCHASEDAVERAGE PRICE PAID PER SHAREAPPROXIMATE DOLLAR VALUE OF SHARES THAT MAY YET BE PURCHASED UNDER THE PLANS OR PROGRAMS (IN MILLIONS) March 1 — March 31, 2023 4,118,427 $ 120.04 $ 14,099 April 1 — April 30, 2023 3,282,288 $ 125.01 $ 13,689 May 1 — May 31, 2023 4,134,824 $ 118.30 $ 13,200 11,535,539 $ 120.83 2023 FORM 10-K 25 PERFORMANCE GRAPH The following graph demonstrates a five-year comparison of cumulative total returns for NIK E's Class B Common Stock; the Standard & Poor's 500 Stock Index; the Dow Jones U.S. Footwear Index; and the Standard & Poor's Apparel, Accessories & Luxury Goods Index. The graph assumes an investment of $100 on May 31, 2018, in each of the indices and our Class B Common Stock. Each of the indices assumes that all dividends were reinvested on the day of issuance. COMPARISON OF 5-YEAR CUMULATIVE TOTAL RETURN AMONG NIKE, INC.; S&P 500 INDEX; THE DOW JONES U.S. FOOTWEAR INDEX; AND S&P APPAREL, ACCESSORIES & LUXURY GOODS INDEX The Dow Jones U.S. Footwear Index consists of NIKE, Crocs Inc., Deckers Outdoor Corporation and Skechers U.S.A., Inc. Because NIKE is part of the Dow Jones U.S. Footwear Index, the price and returns of NIKE stock have a substantial effect on this index. The Standard & Poor's Apparel, Accessories & Luxury Goods Index consists of Ralph Lauren Corporation, Tapestry, Inc. and V.F. Corporation. The Dow Jones U.S. Footwear Index and the Standard & Poor's Apparel, Accessories & Luxury Goods Index include companies in two major lines of business in which the Company competes. The indices do not encompass all of the Company's competitors, nor all product categories and lines of business in which the Company is engaged. The stock performance shown on the performance graph above is not necessarily indicative of future performance. The Company will not make or endorse any predictions as to future stock performance. The performance graph above is being furnished solely to accompany this Annual Report pursuant to Item 201(e) of Regulation S-K, is not being filed for purposes of Section 18 of the Securities Exchange Act of 1934, as amended, and is not to be incorporated by reference into any filing of the Company, whether made before or after the date hereof, regardless of any general incorporation language in such filing. NIKE, INC. 26$0$20$40$60$80$100$120$140$160$180$200$220 2018 2019 2020 2021 2022 2023 NIKE, Inc. S&P 500 INDEX - TOTAL RETURN DOW JONES US FOOTWEAR INDEX S&P 500 APPAREL, ACCESSORIES & LUXURY GOODS INDEXITEM 6. [RESERVED] 2023 FORM 10-K 27 ITEM 7. MANAGEMENT'S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS OVERVIEW NIKE designs, develops, markets and sells athletic footwear, apparel, equipment, accessories and services worldwide. We are the largest seller of athletic footwear and apparel in the world. W e sell our products through NIKE Direct operations, which is comprised of both NIKE-owned retail stores and sales through our digital platforms (also referred to as "NIKE Brand Digital"), to wholesale accounts and to a mix of independent distributors, licensees and sales representatives in nearly all countries around the world. Our goal is to deliver value to our shareholders by building a profitable global portfolio of branded footwear , apparel, equipment and accessories businesses. Our strategy is to achieve long-term revenue growth by creating innovative, "must-have" products, building deep personal consumer connections with our brands and delivering compelling consumer experiences through digital platforms and at retail. Through the Consumer Direct Acceleration strategy, we are focused on creating the marketplace of the future with more premium, consistent and seamless consumer experiences, leading with digital and our owned stores, as well as select wholesale partners. In addition, our product creation and marketing organizations are aligned to a consumer construct focused on sports dimensions through Men's, Women's and Kids', which allows us to better serve consumer needs. We continue to invest in a new Enterprise Resource Planning Platform, data and analytics, demand sensing, insight gathering, and other areas to create an end- to-end technology foundation, which we believe will further accelerate our digital transformation. W e believe this unified approach will accelerate growth and unlock more efficiency for our business, while driving speed and responsiveness as we serve consumers globally. FINANCIAL HIGHLIGHTS •In fiscal 2023, NIKE, Inc. achieved record Revenues of $51.2 billion, which increased 10% and 16% on a reported and currency-neutral basis, respectively •NIKE Direct revenues grew 14% from $18.7 billion in fiscal 2022 to $21.3 billion in fiscal 2023, and represented approximately 44% of total NIKE Brand revenues for fiscal 2023 •Gross margin for the fiscal year decreased 250 basis points to 43.5% primarily driven by higher product costs, higher markdowns and unfavorable changes in foreign currency exchange rates, partially of fset by strategic pricing actions •Inventories as of May 31, 2023 were $8.5 billion, flat compared to the prior year, driven by the actions we took throughout fiscal 2023 to manage inventory levels •We returned $7.5 billion to our shareholders in fiscal 2023 through share repurchases and dividends •Return on Invested Capital ("ROIC") as of May 31, 2023 was 31.5% compared to 46.5% as of May 31, 2022. ROIC is considered a non-GAAP financial measure, see "Use of Non-GAAP Financial Measures" for further information. For discussion related to the results of operations and changes in financial condition for fiscal 2022 compared to fiscal 2021 refer to Part II, Item 7. Management's Discussion and Analysis of Financial Condition and Results of Operations in our fiscal 2022 Form 10-K, which was filed with the United States Securities and Exchange Commission on July 21, 2022. CURRENT ECONOMIC CONDITIONS AND MARKET DYNAMICS • Consumer Spending: Our fiscal 2023 growth in Revenues reflects strong demand for our products despite ongoing uncertainty in the global economy . We will continue to closely monitor macroeconomic conditions, including potential impacts of inflation and rising interest rates on consumer behavior. • Inflationary Pressures: Inflationary pressures, including higher product input, freight and logistics costs negatively impacted gross margin for fiscal 2023. The strategic pricing actions we have taken partially offset the impacts of these higher costs. • Supply Chain Volatility: Supply chain challenges, macroeconomic conditions and the impact of the COVID-19 pandemic on the manufacturing of our product disrupted the flow of seasonal product in fiscal 2022 and the first quarter of fiscal 2023, resulting in elevated inventory levels at the end of the first quarter of fiscal 2023. Throughout fiscal 2023, we took action to reduce excess inventory by decreasing future inventory purchases and increasing promotional activity . These actions, along with the stabilization of inventory transit times in the second and third quarters of fiscal 2023, resulted in the normalization of the seasonal flow of product in the fourth quarter of fiscal 2023. NIKE, INC. 28• COVID-19 Impacts in Greater China: During the first and second quarters of fiscal 2023, we managed through continued temporary store closures and reduced retail traffic in Greater China, primarily due to COVID-19 related local government restrictions. At the beginning of the third quarter of fiscal 2023, the government mandated restrictions were lifted and we experienced improvement in physical retail traffic. • Foreign Currency Impacts: As a global company with significant operations outside the United States, we are exposed to risk arising from foreign currency exchange rates. For fiscal 2023, fluctuations in foreign currency exchange rates negatively impacted our reported Revenues by approximately $2,859 million, reducing our revenue growth rate to 10% on a reported basis from 16% on a currency-neutral basis. Foreign currency impacts, net of hedges, also reduced our reported Income before income taxes by approximately $1,023 million. For further information, refer to "Foreign Currency Exposures and Hedging Practices". The operating environment could remain volatile in fiscal 2024 as the risk exists that worsening macroeconomic conditions could have a material adverse impact on our future revenue growth as well as overall profitability . For more information refer to Item 1A Risk Factors, within Part I, Item 1. Business. RECENT DEVELOPMENTS During the first and second quarters of fiscal 2023, we completed the sale of our entity in Chile and our entities in Argentina and Uruguay to third-party distributors, respectively. Now that we have completed the shift from a wholesale and direct to consumer operating model to a distributor model within our Central and South America ("CASA") territory, we expect consolidated NIKE, Inc. and Asia Pacific & Latin America ("APLA") revenue growth will be reduced due to different commercial terms. However, over time we expect the future operating model to have a favorable impact on our overall profitability as we reduce selling and administrative expenses, as well as reduce exposure to foreign exchange rate volatility . USE OF NON-GAAP FINANCIAL MEASURES Throughout this Annual Report on Form 10-K, we discuss non-GAAP financial measures, which should be considered in addition to, and not in lieu of, the financial measures calculated and presented in accordance with U.S . GAAP. References to these measures should not be considered in isolation or as a substitute for other financial measures calculated and presented in accordance with U.S. GAAP and may not be comparable to similarly titled measures used by other companies. Management uses these non-GAAP measures when evaluating the Company's performance, including when making financial and operating decisions. Additionally, management believes these non-GAAP financial measures provide investors with additional financial information that should be considered when assessing our underlying business performance and trends. Earnings Before Interest and Taxes ("EBIT") : Calculated as Net income before Interest expense (income), net and Income tax expense in the Consolidated Statements of Income. Total NIKE, Inc. EBIT for fiscal 2023 and fiscal 2022 is as follows: YEAR ENDED MAY 31, (Dollars in millions) 2023 2022 Net income $ 5,070 $ 6,046 Add: Interest expense (income), net (6) 205 Add: Income tax expense 1,131 605 Earnings before interest and taxes $ 6,195 $ 6,856 EBIT Margin : Calculated as total NIKE, Inc. EBIT divided by total NIKE, Inc. Revenues. Our EBIT Margin calculation for fiscal 2023 and fiscal 2022 is as follows: YEAR ENDED MAY 31, (Dollars in millions) 2023 2022 Numerator Earnings before interest and taxes $ 6,195 $ 6,856 Denominator Total NIKE, Inc. Revenues $ 51,217 $ 46,710 EBIT Margin 12.1 % 14.7 % 2023 FORM 10-K 29 Return on Invested Capital ("ROIC") : Represents a performance measure that management believes is useful information in understanding the Company's ability to effectively manage invested capital. Our ROIC calculation as of May 31, 2023 and 2022 is as follows: FOR THE TRAILING FOUR QUARTERS ENDED (Dollars in millions) MAY 31, 2023 MAY 31, 2022 Numerator Net income $ 5,070 $ 6,046 Add: Interest expense (income), net (6) 205 Add: Income tax expense 1,131 605 Earnings before interest and taxes 6,195 6,856 Income tax adjustment(1) (1,130) (624) Earnings before interest and after taxes $ 5,065 $ 6,232 AVERAGE FOR THE TRAILING FIVE QUARTERS ENDED MAY 31, 2023 MAY 31, 2022 Denominator Total debt(2)$ 12,491 $ 12,722 Add: Shareholders' equity 14,982 14,425 Less: Cash and equivalents and Short-term investments 11,394 13,748 Total invested capital $ 16,079 $ 13,399 RETURN ON INVESTED CAPITAL 31.5 % 46.5 % (1) Equals Earnings before interest and taxes multiplied by the effective tax rate as of the respective quarter end. (2) Total debt includes the following: 1) Current portion of long-term debt, 2) Notes Payable, 3) Current portion of operating lease liabilities, 4) Long-term debt and 5) Operating lease liabilities. Currency-neutral revenues : Currency-neutral revenues enhance visibility to underlying business trends, excluding the impact of translation arising from foreign currency exchange rate fluctuations. Currency-neutral revenues are calculated using actual exchange rates in use during the comparative prior year period in place of the exchange rates in use during the current period. Wholesale equivalent revenues : References to wholesale equivalent revenues are intended to provide context as to the total size of our NIKE Brand market footprint if we had no NIKE Direct operations. NIKE Brand wholesale equivalent revenues consist of (1) sales to external wholesale customers and (2) internal sales from our wholesale operations to our NIK E Direct operations, which are charged at prices comparable to those charged to external wholesale customers. COMPARABLE STORE SALES Comparable store sales : This key metric, which excludes NIKE Brand Digital sales, comprises revenues from NIKE-owned in- line and factory stores for which all three of the following requirements have been met : (1) the store has been open at least one year, (2) square footage has not changed by more than 15% within the past year and (3) the store has not been permanently repositioned within the past year. Comparable store sales includes revenues from stores that were temporarily closed during the period as a result of COVID-19. Comparable store sales represents a performance metric that we believe is useful information for management and investors in understanding the performance of our established NIK E-owned in-line and factory stores. Management considers this metric when making financial and operating decisions. The method of calculating comparable store sales varies across the retail industry. As a result, our calculation of this metric may not be comparable to similarly titled metrics used by other companies. NIKE, INC. 30RESULTS OF OPERATIONS (Dollars in millions, except per share data) FISCAL 2023 FISCAL 2022 % CHANGE FISCAL 2021 % CHANGE Revenues $ 51,217 $ 46,710 10 % $ 44,538 5 % Cost of sales 28,925 25,231 15 % 24,576 3 % Gross profit 22,292 21,479 4 % 19,962 8 % Gross margin 43.5 % 46.0 % 44.8 % Demand creation expense 4,060 3,850 5 % 3,114 24 % Operating overhead expense 12,317 10,954 12 % 9,911 11 % Total selling and administrative expense 16,377 14,804 11 % 13,025 14 % % of revenues 32.0 % 31.7 % 29.2 % Interest expense (income), net (6) 205 — 262 — Other (income) expense, net (280) (181) — 14 — Income before income taxes 6,201 6,651 -7 % 6,661 0 % Income tax expense 1,131 605 87 % 934 -35 % Effective tax rate 18.2 % 9.1 % 14.0 % NET INCOME $ 5,070 $ 6,046 -16 % $ 5,727 6 % Diluted earnings per common share $ 3.23 $ 3.75 -14 % $ 3.56 5 % 2023 FORM 10-K 31 CONSOLIDATED OPERATING RESULTS REVENUES (Dollars in millions)FISCAL 2023FISCAL 2022% CHANGE% CHANGE EXCLUDING CURRENCY CHANGES(1)FISCAL 2021% CHANGE% CHANGE EXCLUDING CURRENCY CHANGES(1) NIKE, Inc. Revenues: NIKE Brand Revenues by: Footwear $ 33,135 $ 29,143 14 % 20 % $ 28,021 4 % 4 % Apparel 13,843 13,567 2 % 8 % 12,865 5 % 6 % Equipment 1,727 1,624 6 % 13 % 1,382 18 % 18 % Global Brand Divisions(2) 58 102 -43 % -43 % 25 308 % 302 % Total NIKE Brand Revenues $ 48,763 $ 44,436 10 % 16 % $ 42,293 5 % 6 % Converse 2,427 2,346 3 % 8 % 2,205 6 % 7 % Corporate(3) 27 (72) — — 40 — — TOTAL NIKE, INC. REVENUES $ 51,217 $ 46,710 10 % 16 % $ 44,538 5 % 6 % Supplemental NIKE Brand Revenues Details: NIKE Brand Revenues by: Sales to Wholesale Customers $ 27,397 $ 25,608 7 % 14 % $ 25,898 -1 % -1 % Sales through NIKE Direct 21,308 18,726 14 % 20 % 16,370 14 % 15 % Global Brand Divisions(2) 58 102 -43 % -43 % 25 308 % 302 % TOTAL NIKE BRAND REVENUES $ 48,763 $ 44,436 10 % 16 % $ 42,293 5 % 6 % NIKE Brand Revenues on a Wholesale Equivalent Basis(1): Sales to Wholesale Customers $ 27,397 $ 25,608 7 % 14 % $ 25,898 -1 % -1 % Sales from our Wholesale Operations to NIKE Direct Operations 12,730 10,543 21 % 27 % 9,872 7 % 7 % TOTAL NIKE BRAND WHOLESALE EQUIVALENT REVENUES $ 40,127 $ 36,151 11 % 18 % $ 35,770 1 % 1 % NIKE Brand Wholesale Equivalent Revenues by:(1),(4) Men's $ 20,733 $ 18,797 10 % 17 % $ 18,391 2 % 3 % Women's 8,606 8,273 4 % 11 % 8,225 1 % 1 % NIKE Kids' 5,038 4,874 3 % 10 % 4,882 0 % 0 % Jordan Brand 6,589 5,122 29 % 35 % 4,780 7 % 7 % Others(5) (839) (915) 8 % -3 % (508) -80 % -79 % TOTAL NIKE BRAND WHOLESALE EQUIVALENT REVENUES $ 40,127 $ 36,151 11 % 18 % $ 35,770 1 % 1 % (1) The percent change excluding currency changes and the presentation of wholesale equivalent revenues represent non-GAAP financial measures. For further information, see "Use of Non-GAAP Financial Measures". (2) Global Brand Divisions revenues include NIKE Brand licensing and other miscellaneous revenues that are not part of a geographic operating segment. (3) Corporate revenues primarily consist of foreign currency hedge gains and losses related to revenues generated by entities within the NIKE Brand geographic operating segments and Converse, but managed through our central foreign exchange risk management program. (4) As a result of the Consumer Direct Acceleration strategy, announced in fiscal 2021, the Company is now organized around a consumer construct of Men's, Women's and Kids'. Beginning in the first quarter of fiscal 2022, unisex products are classified within Men's, and Jordan Brand revenues are separately reported. Certain prior year amounts were reclassified to conform to fiscal 2022 presentation. These changes had no impact on previously reported consolidated results of operations or shareholders' equity. (5) Others include products not allocated to Men's, Women's, NIKE Kids' and Jordan Brand, as well as certain adjustments that are not allocated to products designated by consumer. NIKE, INC. 32FISCAL 2023 NIKE BRAND REVENUE HIGHLIGHTS The following tables present NIKE Brand revenues disaggregated by reportable operating segment, distribution channel and major product line: FISCAL 2023 COMPARED TO FISCAL 2022 •NIKE, Inc. Revenues were $51.2 billion in fiscal 2023, which increased 10% and 16% compared to fiscal 2022 on a reported and currency-neutral basis, respectively. The increase was due to higher revenues in North America, Europe, Middle East & Africa ("EMEA"), APLA and Greater China, which contributed approximately 7, 6, 2 and 1 percentage points to NIKE, Inc. Revenues, respectively. •NIKE Brand revenues, which represented over 90% of NIKE, Inc. Revenues, increased 10% and 16% on a reported and currency-neutral basis, respectively. This increase was primarily due to higher revenues in Men's, the Jordan Brand, Women's and Kids' which grew 17%, 35%,11% and 10%, respectively, on a wholesale equivalent basis. •NIKE Brand footwear revenues increased 20% on a currency-neutral basis, due to higher revenues in Men's, the Jordan Brand, Women's and Kids'. Unit sales of footwear increased 13%, while higher average selling price ("ASP") per pair contributed approximately 7 percentage points of footwear revenue growth. Higher ASP was primarily due to higher full-price ASP, net of discounts, on a wholesale equivalent basis, and growth in the size of our NIKE Direct business, partially offset by lower NIKE Direct ASP. •NIKE Brand apparel revenues increased 8% on a currency-neutral basis, primarily due to higher revenues in Men's. Unit sales of apparel increased 4%, while higher ASP per unit contributed approximately 4 percentage points of apparel revenue growth. Higher ASP was primarily due to higher full-price ASP and growth in the size of our NIKE Direct business, partially offset by lower NIKE Direct ASP, reflecting higher promotional activity. •NIKE Direct revenues increased 14% from $18.7 billion in fiscal 2022 to $21.3 billion in fiscal 2023. On a currency-neutral basis, NIKE Direct revenues increased 20% primarily driven by NIKE Brand Digital sales growth of 24%, comparable store sales growth of 14% and the addition of new stores. For further information regarding comparable store sales, including the definition, see "Comparable Store Sales". NIKE Brand Digital sales were $12.6 billion for fiscal 2023 compared to $10.7 billion for fiscal 2022. 2023 FORM 10-K 33 28% EMEA13% APLA44% North America 15% Greater China56% Wholesale 44% NIKE Direct28% Apparel4% Equipment68% FootwearGROSS MARGIN FISCAL 2023 COMPARED TO FISCAL 2022 For fiscal 2023, our consolidated gross profit increased 4% to $22,292 million compared to $21,479 million for fiscal 2022. Gross margin decreased 250 basis points to 43.5% for fiscal 2023 compared to 46.0% for fiscal 2022 due to the following: *Wholesale equivalent The decrease in gross margin for fiscal 2023 was primarily due to: •Higher NIKE Brand product costs, on a wholesale equivalent basis, primarily due to higher input costs and elevated inbound freight and logistics costs as well as product mix; •Lower margin in our NIKE Direct business, driven by higher promotional activity to liquidate inventory in the current period compared to lower promotional activity in the prior period resulting from lower available inventory supply; •Unfavorable changes in net foreign currency exchange rates, including hedges; and •Lower off-price margin, on a wholesale equivalent basis. This was partially offset by: •Higher NIKE Brand full-price ASP, net of discounts, on a wholesale equivalent basis, due primarily to strategic pricing actions and product mix; and •Lower other costs, primarily due to higher inventory obsolescence reserves recognized in Greater China in the fourth quarter of fiscal 2022. TOTAL SELLING AND ADMINISTRATIVE EXPENSE (Dollars in millions) FISCAL 2023 FISCAL 2022 % CHANGE FISCAL 2021 % CHANGE Demand creation expense(1)$ 4,060 $ 3,850 5% $ 3,114 24% Operating overhead expense 12,317 10,954 12% 9,911 11% Total selling and administrative expense $ 16,377 $ 14,804 11% $ 13,025 14% % of revenues 32.0 % 31.7 % 30 bps 29.2 % 250 bps (1) Demand creation expense consists of advertising and promotion costs, including costs of endorsement contracts, complimentary product, television, digital and print advertising and media costs, brand events and retail brand presentation. FISCAL 2023 COMPARED TO FISCAL 2022 Demand creation expense increased 5% for fiscal 2023, primarily due to higher advertising and marketing expense and higher sports marketing expense. Changes in foreign currency exchange rates decreased Demand creation expense by approximately 4 percentage points. Operating overhead expense increased 12%, primarily due to higher wage-related expenses, NIKE Direct variable costs, strategic technology enterprise investments and other administrative costs. Changes in foreign currency exchange rates decreased Operating overhead expense by approximately 3 percentage points. NIKE, INC. 34%43.5 (1.0)3.1(3.3) 0.1 (0.4)(1.0)46.0 FY 23 FULL PRICE NIKE BRAND AVERAGE SELLING PRICE (NET OF DISCOUNTS)*FOREIGN CURRENCY EXCHANGE RATES (INCL. HEDGES)OTHER COSTS OFF-PRICE* NIKE DIRECT FY 22 NIKE BRAND PRODUCT COSTS*40.042.044.046.048.0OTHER (INCOME) EXPENSE, NET (Dollars in millions) FISCAL 2023 FISCAL 2022 FISCAL 2021 Other (income) expense, net $ (280) $ (181) $ 14 Other (income) expense, net comprises foreign currency conversion gains and losses from the remeasurement of monetary assets and liabilities denominated in non-functional currencies and the impact of certain foreign currency derivative instruments, as well as unusual or non-operating transactions that are outside the normal course of business. FISCAL 2023 COMPARED TO FISCAL 2022 Other (income) expense, net increased from $181 million of other income, net in fiscal 2022 to $280 million in the current fiscal year, primarily due to a net favorable change in foreign currency conversion gains and losses, including hedges, and the one-time charge related to the deconsolidation of our Russian operations recognized in the prior year . This increase was partially offset by net unfavorable activity related to our strategic distributor partnership transition within APLA, including the loss recognized upon the completion of the sale of our entities in Argentina and Uruguay to a third-party distributor in the second quarter of fiscal 2023. For more information related to our distributor partnership transition within APLA, see Note 18 — Acquisitions and Divestitures within the accompanying Notes to the Consolidated Financial Statements. We estimate the combination of the translation of foreign currency-denominated profits from our international businesses, and the year-over-year change in foreign currency-related gains and losses included in Other (income) expense, net had an unfavorable impact on our Income before income taxes of $1,023 million for fiscal 2023. INCOME TAXES FISCAL 2023 FISCAL 2022 % CHANGE FISCAL 2021 % CHANGE Effective tax rate 18.2 % 9.1 % 910 bps 14.0 % (490) bps FISCAL 2023 COMPARED TO FISCAL 2022 Our effective tax rate was 18.2% for fiscal 2023, compared to 9.1% for fiscal 2022, primarily due to decreased benefits from stock-based compensation and a non-cash, one-time benefit in the prior year related to the onshoring of certain non-U.S . intangible property ownership rights. On August 16, 2022, the U.S. government enacted the Inflation Reduction Act of 2022 that includes, among other provisions, changes to the U.S. corporate income tax system, including a fifteen percent minimum tax based on "adjusted financial statement income," which is effective for NIKE beginning June 1, 2023. Based on our current analysis of the provisions, we do not expect these tax law changes to have a material impact on our financial statements; however, we will continue to evaluate their impact as further information becomes available. 2023 FORM 10-K 35 OPERATING SEGMENTS As discussed in Note 15 — Operating Segments and Related Information in the accompanying Notes to the Consolidated Financial Statements, our operating segments are evidence of the structure of the Company's internal organization. The NIKE Brand segments are defined by geographic regions for operations participating in NIKE Brand sales activity. The breakdown of Revenues is as follows: (Dollars in millions) FISCAL 2023 FISCAL 2022 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES(1)FISCAL 2021 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES(1) North America $ 21,608 $ 18,353 18 % 18 % $ 17,179 7 % 7 % Europe, Middle East & Africa 13,418 12,479 8 % 21 % 11,456 9 % 12 % Greater China 7,248 7,547 -4 % 4 % 8,290 -9 % -13 % Asia Pacific & Latin America(2) 6,431 5,955 8 % 17 % 5,343 11 % 16 % Global Brand Divisions(3) 58 102 -43 % -43 % 25 308 % 302 % TOTAL NIKE BRAND $ 48,763 $ 44,436 10 % 16 % $ 42,293 5 % 6 % Converse 2,427 2,346 3 % 8 % 2,205 6 % 7 % Corporate(4) 27 (72) — — 40 — — TOTAL NIKE, INC. REVENUES $ 51,217 $ 46,710 10 % 16 % $ 44,538 5 % 6 % (1) The percent change excluding currency changes represents a non-GAAP financial measure. For further information, see "Use of Non-GAAP Financial Measures". (2) For additional information on the transition of our NIKE Brand businesses within our CASA territory to a third-party distributor, see Note 18 — Acquisitions and Divestitures of the Notes to Consolidated Financial Statements contained in Item 8 of this Annual Report. (3) Global Brand Divisions revenues include NIKE Brand licensing and other miscellaneous revenues that are not part of a geographic operating segment. (4) Corporate revenues primarily consist of foreign currency hedge gains and losses related to revenues generated by entities within the NIKE Brand geographic operating segments and Converse, but managed through our central foreign exchange risk management program. The primary financial measure used by the Company to evaluate performance is Earnings Before Interest and Taxes ("EBIT"). As discussed in Note 15 — Operating Segments and Related Information in the accompanying Notes to the Consolidated Financial Statements, certain corporate costs are not included in EBIT. The breakdown of EBIT is as follows: (Dollars in millions) FISCAL 2023 FISCAL 2022 % CHANGE FISCAL 2021 % CHANGE North America $ 5,454 $ 5,114 7 % $ 5,089 0 % Europe, Middle East & Africa 3,531 3,293 7 % 2,435 35 % Greater China 2,283 2,365 -3 % 3,243 -27 % Asia Pacific & Latin America 1,932 1,896 2 % 1,530 24 % Global Brand Divisions (4,841) (4,262) -14 % (3,656) -17 % TOTAL NIKE BRAND(1)$ 8,359 $ 8,406 -1 % $ 8,641 -3 % Converse 676 669 1 % 543 23 % Corporate (2,840) (2,219) -28 % (2,261) 2 % TOTAL NIKE, INC. EARNINGS BEFORE INTEREST AND TAXES(1)$ 6,195 $ 6,856 -10 % $ 6,923 -1 % EBIT margin(1) 12.1 % 14.7 % 15.5 % Interest expense (income), net (6) 205 — 262 — TOTAL NIKE, INC. INCOME BEFORE INCOME TAXES $ 6,201 $ 6,651 -7 % $ 6,661 0 % (1) Total NIKE Brand EBIT, Total NIKE, Inc. EBIT and EBIT Margin represent non-GAAP financial measures. See "Use of Non-GAAP Financial Measures" for further information. NIKE, INC. 36NORTH AMERICA (Dollars in millions) FISCAL 2023 FISCAL 2022 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES FISCAL 2021 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES Revenues by: Footwear $ 14,897 $ 12,228 22 % 22 % $ 11,644 5 % 5 % Apparel 5,947 5,492 8 % 9 % 5,028 9 % 9 % Equipment 764 633 21 % 21 % 507 25 % 25 % TOTAL REVENUES $ 21,608 $ 18,353 18 % 18 % $ 17,179 7 % 7 % Revenues by: Sales to Wholesale Customers $ 11,273 $ 9,621 17 % 18 % $ 10,186 -6 % -6 % Sales through NIKE Direct 10,335 8,732 18 % 18 % 6,993 25 % 25 % TOTAL REVENUES $ 21,608 $ 18,353 18 % 18 % $ 17,179 7 % 7 % EARNINGS BEFORE INTEREST AND TAXES $ 5,454 $ 5,114 7 % $ 5,089 0 % FISCAL 2023 COMPARED TO FISCAL 2022 •North America revenues increased 18% on a currency-neutral basis, primarily due to higher revenues in Men's and the Jordan Brand. NIKE Direct revenues increased 18%, driven by strong digital sales growth of 23%, comparable store sales growth of 9% and the addition of new stores. •Footwear revenues increased 22% on a currency-neutral basis, primarily due to higher revenues in Men's and the Jordan Brand. Unit sales of footwear increased 17%, while higher ASP per pair contributed approximately 5 percentage points of footwear revenue growth. Higher ASP per pair was primarily due to higher full-price ASP and growth in NIKE Direct, partially offset by lower NIKE Direct ASP, reflecting higher promotional activity as well as lower available inventory supply in the prior period and a lower mix of full-price sales. •Apparel revenues increased 9% on a currency-neutral basis, primarily due to higher revenues in Men's. Unit sales of apparel increased 7%, while higher ASP per unit contributed approximately 2 percentage points of apparel revenue growth. Higher ASP per unit was primarily due to higher full-price ASP and growth in NIKE Direct, partially offset by lower NIKE Direct ASP, reflecting higher promotional activity. Reported EBIT increased 7% due to higher revenues and the following: •Gross margin contraction of 310 basis points primarily due to higher product costs, reflecting higher input costs and inbound freight and logistics costs and product mix, lower margins in NIK E Direct due to higher promotional activity and a lower mix of full-price sales. This was partially offset by higher full-price ASP, net of discounts, largely due to strategic pricing actions and product mix. •Selling and administrative expense increased 15% due to higher operating overhead and demand creation expense. The increase in operating overhead expense was primarily due to higher wage-related costs and higher NIKE Direct variable costs, in part due to new store additions. Demand creation expense increased primarily due to higher sports marketing expense and an increase in digital marketing. 2023 FORM 10-K 37 EUROPE, MIDDLE EAST & AFRICA (Dollars in millions) FISCAL 2023 FISCAL 2022 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES FISCAL 2021 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES Revenues by: Footwear $ 8,260 $ 7,388 12 % 25 % $ 6,970 6 % 9 % Apparel 4,566 4,527 1 % 14 % 3,996 13 % 16 % Equipment 592 564 5 % 18 % 490 15 % 17 % TOTAL REVENUES $ 13,418 $ 12,479 8 % 21 % $ 11,456 9 % 12 % Revenues by: Sales to Wholesale Customers $ 8,522 $ 8,377 2 % 15 % $ 7,812 7 % 10 % Sales through NIKE Direct 4,896 4,102 19 % 33 % 3,644 13 % 15 % TOTAL REVENUES $ 13,418 $ 12,479 8 % 21 % $ 11,456 9 % 12 % EARNINGS BEFORE INTEREST AND TAXES $ 3,531 $ 3,293 7 % $ 2,435 35 % FISCAL 2023 COMPARED TO FISCAL 2022 •EMEA revenues increased 21% on a currency-neutral basis, due to higher revenues in Men's, the Jordan Brand, Women's and Kids'. NIKE Direct revenues increased 33%, driven primarily by strong digital sales growth of 43% and comparable store sales growth of 22%. •Footwear revenues increased 25% on a currency-neutral basis, due to higher revenues in Men's, the Jordan Brand, Women's and Kids'. Unit sales of footwear increased 9%, while higher ASP per pair contributed approximately 16 percentage points of footwear revenue growth. Higher ASP per pair was primarily due to higher full-price ASP and growth in NIKE Direct. •Apparel revenues increased 14% on a currency-neutral basis, primarily due to higher revenues in Men's. Unit sales of apparel increased 2%, while higher ASP per unit contributed approximately 12 percentage points of apparel revenue growth. Higher ASP per unit was primarily due to higher full-price ASP and growth in NIKE Direct, partially offset by lower NIKE Direct ASP, reflecting higher promotional activity. Reported EBIT increased 7% due to higher revenues and the following: •Gross margin contraction of 60 basis points primarily due to higher product costs reflecting higher input costs, inbound freight and logistics costs and product mix, higher other costs and unfavorable changes in standard foreign currency exchange rates. This was partially offset by higher full-price ASP, net of discounts, primarily due to strategic pricing actions and product mix. •Selling and administrative expense increased 4% due to higher operating overhead and demand creation expense. Operating overhead expense increased primarily due to higher wage-related expenses and other administrative costs, partially offset by favorable changes in foreign currency exchange rates. Demand creation expense increased primarily due to higher advertising and marketing expense, partially offset by favorable changes in foreign currency exchange rates. NIKE, INC. 38 GREATER CHINA (Dollars in millions) FISCAL 2023 FISCAL 2022 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES FISCAL 2021 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES Revenues by: Footwear $ 5,435 $ 5,416 0 % 8 % $ 5,748 -6 % -10 % Apparel 1,666 1,938 -14 % -7 % 2,347 -17 % -21 % Equipment 147 193 -24 % -18 % 195 -1 % -6 % TOTAL REVENUES $ 7,248 $ 7,547 -4 % 4 % $ 8,290 -9 % -13 % Revenues by: Sales to Wholesale Customers $ 3,866 $ 4,081 -5 % 2 % $ 4,513 -10 % -14 % Sales through NIKE Direct 3,382 3,466 -2 % 5 % 3,777 -8 % -12 % TOTAL REVENUES $ 7,248 $ 7,547 -4 % 4 % $ 8,290 -9 % -13 % EARNINGS BEFORE INTEREST AND TAXES $ 2,283 $ 2,365 -3 % $ 3,243 -27 % FISCAL 2023 COMPARED TO FISCAL 2022 •Greater China revenues increased 4% on a currency-neutral basis, primarily due to higher revenues in the Jordan Brand, partially offset by lower revenues in Men's and Women's. NIKE Direct revenues increased 5%, due to comparable store sales growth of 9% and the addition of new stores, partially offset by digital sales declines of 4%. •Footwear revenues increased 8% on a currency-neutral basis, primarily due to higher revenues in the Jordan Brand and Men's. Unit sales of footwear increased 7%, while higher ASP per pair contributed approximately 1 percentage point of footwear revenue growth. Higher ASP per pair was primarily due to higher NIKE Direct ASP and a higher mix of full-price sales, largely offset by a lower mix of NIKE Direct sales. •Apparel revenues decreased 7% on a currency-neutral basis, primarily due to lower revenues in Men's and Women's. Unit sales of apparel decreased 8%, while higher ASP per unit contributed approximately 1 percentage point of apparel revenue growth. Higher ASP per unit was primarily due to a higher mix of full price sales, partially offset by lower off-price ASP. Reported EBIT decreased 3% due to lower revenues and the following: •Gross margin expansion of approximately 140 basis points, primarily due to higher inventory obsolescence reserves recognized in the fourth quarter of fiscal 2022, favorable changes in standard foreign currency exchange rates and higher full-price ASP, net of discounts, in part due to product mix. This was partially offset by higher product costs reflecting higher input costs and product mix. •Selling and administrative expense was flat due to increased operating overhead expense offset by lower demand creation expense. The increase in operating overhead expense was primarily due to higher wage-related expenses and other administrative costs, partially offset by favorable changes in foreign currency exchange rates. Demand creation expense decreased primarily due to lower retail brand presentation costs, lower digital marketing and favorable changes in foreign currency exchange rates, partially offset by higher advertising and marketing expense. 2023 FORM 10-K 39 ASIA PACIFIC & LATIN AMERICA (Dollars in millions) FISCAL 2023 FISCAL 2022 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES FISCAL 2021 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES Revenues by: Footwear $ 4,543 $ 4,111 11 % 19 % $ 3,659 12 % 17 % Apparel 1,664 1,610 3 % 13 % 1,494 8 % 12 % Equipment 224 234 -4 % 4 % 190 23 % 28 % TOTAL REVENUES $ 6,431 $ 5,955 8 % 17 % $ 5,343 11 % 16 % Revenues by: Sales to Wholesale Customers $ 3,736 $ 3,529 6 % 14 % $ 3,387 4 % 8 % Sales through NIKE Direct 2,695 2,426 11 % 22 % 1,956 24 % 30 % TOTAL REVENUES $ 6,431 $ 5,955 8 % 17 % $ 5,343 11 % 16 % EARNINGS BEFORE INTEREST AND TAXES $ 1,932 $ 1,896 2 % $ 1,530 24 % As discussed previously, our NIKE Brand business in Brazil transitioned to a distributor operating model during fiscal 2021. We completed the sale of our entity in Chile and our entities in Argentina and Uruguay to third-party distributors in the first and second quarters of fiscal 2023, respectively. The impacts of closing these transactions are included within Corporate and are not reflected in the APLA operating segment results. This completed the transition of our NIKE Brand businesses within our CASA marketplace, which now reflects a full distributor operating model. For more information see Note 18 — Acquisitions and Divestitures within the accompanying Notes to the Consolidated Financial Statements. FISCAL 2023 COMPARED TO FISCAL 2022 •APLA revenues increased 17% on a currency-neutral basis due to higher revenues across nearly all territories, led by Southeast Asia and India, Korea and Japan. The increase was partially offset by a decline in our CASA territory. Within our CASA territory, the transition of our Chile, Argentina and Uruguay entities to a third-party distributor operating model reduced APLA revenue growth by approximately 5 percentage points. Revenues increased primarily due to growth in Men's, Women's and the Jordan Brand. NIKE Direct revenues increased 22%, driven by digital sales growth of 23% and comparable store sales growth of 28%. •Footwear revenues increased 19% on a currency-neutral basis, primarily due to higher revenues in Men's, Women's and the Jordan Brand. Unit sales of footwear increased 16%, while higher ASP per pair contributed approximately 3 percentage points of footwear revenue growth. Higher ASP per pair was primarily due to higher full-price ASP and growth in NIKE Direct, partially offset by lower NIKE Direct ASP. •Apparel revenues increased 13% on a currency-neutral basis, primarily due to higher revenues in Men's. Unit sales of apparel increased 9%, while higher ASP per unit contributed approximately 4 percentage points of apparel revenue growth. Higher ASP per unit was primarily due to higher full-price and off-price ASPs, partially offset by lower NIKE Direct ASP. Reported EBIT increased 2% due to higher revenues and the following: •Gross margin contraction of approximately 190 basis points primarily due to higher product costs, reflecting product mix and higher input costs, as well as unfavorable changes in standard foreign currency exchange rates. This was partially offset by higher full-price ASP, net of discounts, due to product mix and strategic pricing actions. •Selling and administrative expense increased 8% due to higher operating overhead and demand creation expense. Operating overhead expense increased primarily due to higher wage-related expenses and an increase in NIK E Direct variable costs, partially offset by favorable changes in foreign currency exchange rates. Demand creation expense increased primarily due to higher sports marketing expense and higher advertising and marketing expense, partially offset by favorable changes in foreign currency exchange rates. NIKE, INC. 40GLOBAL BRAND DIVISIONS (Dollars in millions) FISCAL 2023 FISCAL 2022 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES FISCAL 2021 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES Revenues $ 58 $ 102 -43 % -43 % $ 25 308 % 302 % Earnings (Loss) Before Interest and Taxes $ (4,841) $ (4,262) -14 % $ (3,656) -17 % Global Brand Divisions primarily represent demand creation and operating overhead expense, including product creation and design expenses that are centrally managed for the NIKE Brand, as well as costs associated with NIKE Direct global digital operations and enterprise technology. Global Brand Divisions revenues include NIKE Brand licensing and other miscellaneous revenues that are not part of a geographic operating segment. FISCAL 2023 COMPARED TO FISCAL 2022 Global Brand Divisions' loss before interest and taxes increased 14% for fiscal 2023 primarily due to a 12% increase in selling and administrative expense from higher operating overhead expense largely driven by higher wage-related costs and strategic technology enterprise investments. CONVERSE (Dollars in millions) FISCAL 2023 FISCAL 2022 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES FISCAL 2021 % CHANGE% CHANGE EXCLUDING CURRENCY CHANGES Revenues by: Footwear $ 2,155 $ 2,094 3 % 8 % $ 1,986 5 % 6 % Apparel 90 103 -13 % -7 % 104 -1 % -3 % Equipment 28 26 8 % 16 % 29 -10 % -16 % Other(1) 154 123 25 % 25 % 86 43 % 42 % TOTAL REVENUES $ 2,427 $ 2,346 3 % 8 % $ 2,205 6 % 7 % Revenues by: Sales to Wholesale Customers $ 1,299 $ 1,292 1 % 7 % $ 1,353 -5 % -4 % Sales through Direct to Consumer 974 931 5 % 8 % 766 22 % 22 % Other(1) 154 123 25 % 25 % 86 43 % 42 % TOTAL REVENUES $ 2,427 $ 2,346 3 % 8 % $ 2,205 6 % 7 % EARNINGS BEFORE INTEREST AND TAXES $ 676 $ 669 1 % $ 543 23 % (1) Other revenues consist of territories serviced by third-party licensees who pay royalties to Converse for the use of its registered trademarks and other intellectual property rights. We do not own the Converse trademarks in Japan and accordingly do not earn revenues in Japan. FISCAL 2023 COMPARED TO FISCAL 2022 •Converse revenues increased 8% on a currency-neutral basis for fiscal 2023 due to revenue growth in North America, Western Europe and licensee markets, partially offset by declines in Asia. Combined unit sales within the wholesale and direct to consumer channels increased 1% while ASP increased 6%, driven by strategic pricing actions in Western Europe and North America. •Direct to consumer revenues increased 8% on a currency-neutral basis, led by strong digital sales growth in North America. •Wholesale revenues increased 7% on a currency-neutral basis, as growth in North America and Western Europe was partially offset by declines in Asia due to marketplace dynamics in China. Reported EBIT increased 1% due to higher revenues and the following: •Gross margin expansion of approximately 50 basis points as higher full-price ASP, net of discounts, lower other costs, and growth in licensee revenues were partially offset by higher product costs, lower margins in direct to consumer in part reflecting increased promotional activity, and unfavorable changes in standard foreign currency exchange rates. •Selling and administrative expense increased 7% due to higher operating overhead and demand creation expense. Operating overhead expense increased primarily as a result of higher wage-related expenses. Demand creation expense increased as a result of higher advertising and marketing costs, partially of fset by lower retail brand presentation costs. 2023 FORM 10-K 41 CORPORATE (Dollars in millions) FISCAL 2023 FISCAL 2022 % CHANGE FISCAL 2021 % CHANGE Revenues $ 27 $ (72) — $ 40 — Earnings (Loss) Before Interest and Taxes $ (2,840) $ (2,219) -28 % $ (2,261) 2 % Corporate revenues primarily consist of foreign currency hedge gains and losses related to revenues generated by entities within the NIKE Brand geographic operating segments and Converse, but managed through our central foreign exchange risk management program. The Corporate loss before interest and taxes primarily consists of unallocated general and administrative expenses, including expenses associated with centrally managed departments; depreciation and amortization related to our corporate headquarters; unallocated insurance, benefit and compensation programs, including stock-based compensation; and certain foreign currency gains and losses. In addition to the foreign currency gains and losses recognized in Corporate revenues, foreign currency results in Corporate include gains and losses resulting from the difference between actual foreign currency exchange rates and standard rates used to record non-functional currency denominated product purchases within the NIK E Brand geographic operating segments and Converse; related foreign currency hedge results; conversion gains and losses arising from remeasurement of monetary assets and liabilities in non-functional currencies; and certain other foreign currency derivative instruments. FISCAL 2023 COMPARED TO FISCAL 2022 Corporate's loss before interest and taxes increased $621 million during fiscal 2023 , primarily due to the following: •an unfavorable change of $371 million primarily related to higher wage and other professional services expenses, reported as a component of consolidated Operating overhead expense; •an unfavorable change of $352 million related to the difference between actual foreign currency exchange rates and standard foreign currency exchange rates assigned to the NIKE Brand geographic operating segments and Converse, net of hedge gains and losses; these results are reported as a component of consolidated gross margin; •an unfavorable change of $45 million largely due to net unfavorable activity related to our strategic distributor partnership transition within APLA, including the loss recognized upon completion of the sale our entities in Argentina and Uruguay to a third-party distributor in the second quarter of fiscal 2023. This was partially offset by the one-time charge related to the deconsolidation of our Russian operations recognized in the prior year , with the net amount of these activities reported as a component of consolidated Other (income) expense, net; and •a favorable change in net foreign currency gains and losses of $174 million related to the remeasurement of monetary assets and liabilities denominated in non-functional currencies and the impact of certain foreign currency derivative instruments, reported as a component of consolidated Other (income) expense, net . FOREIGN CURRENCY EXPOSURES AND HEDGING PRACTICES OVERVIEW As a global company with significant operations outside the United States, in the normal course of business we are exposed to risk arising from changes in currency exchange rates. Our primary foreign currency exposures arise from the recording of transactions denominated in non-functional currencies and the translation of foreign currency denominated results of operations, financial position and cash flows into U.S. Dollars. Our foreign exchange risk management program is intended to lessen both the positive and negative ef fects of currency fluctuations on our consolidated results of operations, financial position and cash flows. W e manage global foreign exchange risk centrally on a portfolio basis to address those risks material to NIK E, Inc. We manage these exposures by taking advantage of natural offsets and currency correlations existing within the portfolio and, where practical and material, by hedging a portion of the remaining exposures using derivative instruments such as forward contracts and options. As described below, the implementation of the NIKE Trading Company ("NTC") and our foreign currency adjustment program enhanced our ability to manage our foreign exchange risk by increasing the natural offsets and currency correlation benefits existing within our portfolio of foreign exchange exposures. Our hedging policy is designed to partially or entirely of fset the impact of exchange rate changes on the underlying net exposures being hedged. Where exposures are hedged, our program has the ef fect of delaying the impact of exchange rate movements on our Consolidated Financial Statements; the length of the delay is dependent upon hedge horizons. We do not hold or issue derivative instruments for trading or speculative purposes. NIKE, INC. 42Refer to Note 4 — Fair Value Measurements and Note 12 — Risk Management and Derivatives in the accompanying Notes to the Consolidated Financial Statements for additional description of outstanding derivatives at each reported period end. TRANSACTIONAL EXPOSURES We conduct business in various currencies and have transactions which subject us to foreign currency risk. Our most significant transactional foreign currency exposures are: •Product Costs — NIKE's product costs are exposed to fluctuations in foreign currencies in the following ways: 1. Product purchases denominated in currencies other than the functional currency of the transacting entity: a. Certain NIKE entities purchase product from the NTC, a wholly-owned sourcing hub that buys NIKE branded products from third-party factories, predominantly in U.S. Dollars. The NTC, whose functional currency is the U.S. Dollar, then sells the products to NIKE entities in their respective functional currencies. NTC sales to a NIKE entity with a different functional currency results in a foreign currency exposure for the NTC. b. Other NIKE entities purchase product directly from third-party factories in U.S. Dollars. These purchases generate a foreign currency exposure for those NIKE entities with a functional currency other than the U.S. Dollar. In both purchasing scenarios, a weaker U.S. Dollar reduces inventory costs incurred by NIKE whereas a stronger U.S. Dollar increases its cost. 2. Factory input costs: NIKE operates a foreign currency adjustment program with certain factories. The program is designed to more effectively manage foreign currency risk by assuming certain of the factories' foreign currency exposures, some of which are natural offsets to our existing foreign currency exposures. Under this program, our payments to these factories are adjusted for rate fluctuations in the basket of currencies ("factory currency exposure index") in which the labor, materials and overhead costs incurred by the factories in the production of NIKE branded products ("factory input costs") are denominated. As an offset to the impacts of the fluctuating U.S. Dollar on our non-functional currency denominated product purchases described above, a strengthening U.S. Dollar against the foreign currencies within the factory currency exposure indices reduces NIKE's U.S. Dollar inventory cost. Conversely, a weakening U.S. Dollar against the indexed foreign currencies increases our inventory cost. •Non-Functional Currency Denominated External Sales — A portion of our NIKE Brand and Converse revenues associated with European operations are earned in currencies other than the Euro (e.g., the British Pound) but are recognized at a subsidiary that uses the Euro as its functional currency. These sales generate a foreign currency exposure. •Other Costs — Non-functional currency denominated costs, such as endorsement contracts, also generate foreign currency risk, though to a lesser extent. •Non-Functional Currency Denominated Monetary Assets and Liabilities — Our global subsidiaries have various assets and liabilities, primarily receivables and payables, including intercompany receivables and payables, denominated in currencies other than their functional currencies. These balance sheet items are subject to remeasurement which may create fluctuations in Other (income) expense, net within our Consolidated Statements of Income. MANAGING TRANSACTIONAL EXPOSURES Transactional exposures are managed on a portfolio basis within our foreign currency risk management program. We manage these exposures by taking advantage of natural offsets and currency correlations that exist within the portfolio and may also elect to use currency forward and option contracts to hedge the remaining ef fect of exchange rate fluctuations on probable forecasted future cash flows, including certain product cost exposures, non-functional currency denominated external sales and other costs described above. Generally, these are accounted for as cash flow hedges. 2023 FORM 10-K 43 Certain currency forward contracts used to manage the foreign exchange exposure of non-functional currency denominated monetary assets and liabilities subject to remeasurement are not formally designated as hedging instruments. Accordingly, changes in fair value of these instruments are recognized in Other (income) expense, net and are intended to offset the foreign currency impact of the remeasurement of the related non-functional currency denominated asset or liability being hedged. TRANSLATIONAL EXPOSURES Many of our foreign subsidiaries operate in functional currencies other than the U.S . Dollar. Fluctuations in currency exchange rates create volatility in our reported results as we are required to translate the balance sheets, operational results and cash flows of these subsidiaries into U.S. Dollars for consolidated reporting. The translation of foreign subsidiaries' non-U.S. Dollar denominated balance sheets into U.S. Dollars for consolidated reporting results in a cumulative translation adjustment to Accumulated other comprehensive income (loss) within Shareholders' equity. In the translation of our Consolidated Statements of Income, a weaker U.S. Dollar in relation to foreign functional currencies benefits our consolidated earnings whereas a stronger U.S. Dollar reduces our consolidated earnings. The impact of foreign exchange rate fluctuations on the translation of our consolidated Revenues was a detriment of approximately $2,859 million, $295 million and a benefit of approximately $893 million for the years ended May 31, 2023, 2022 and 2021, respectively. The impact of foreign exchange rate fluctuations on the translation of our Income before income taxes was a detriment of approximately $824 million, $87 million and a benefit of approximately $260 million for the years ended May 31, 2023, 2022 and 2021, respectively. MANAGING TRANSLATIONAL EXPOSURES To minimize the impact of translating foreign currency denominated revenues and expenses into U.S. Dollars for consolidated reporting, certain foreign subsidiaries use excess cash to purchase U.S . Dollar denominated available-for-sale investments. The variable future cash flows associated with the purchase and subsequent sale of these U.S . Dollar denominated investments at non-U.S. Dollar functional currency subsidiaries creates a foreign currency exposure that qualifies for hedge accounting under generally accepted accounting principles in the United States of America ("U.S. GAAP"). We utilize forward contracts and/or options to mitigate the variability of the forecasted future purchases and sales of these U.S . Dollar investments. The combination of the purchase and sale of the U.S. Dollar investment and the hedging instrument has the effect of partially offsetting the year- over-year foreign currency translation impact on net earnings in the period the investments are sold. Hedges of the purchase of U.S. Dollar denominated available-for-sale investments are accounted for as cash flow hedges. We estimate the combination of translation of foreign currency-denominated profits from our international businesses and the year-over-year change in foreign currency related gains and losses included in Other (income) expense, net had an unfavorable impact of approximately $1,023 million and a favorable impact of approximately $132 million and $19 million on our Income before income taxes for the years ended May 31, 2023, 2022 and 2021, respectively. NET INVESTMENTS IN FOREIGN SUBSIDIARIES We are also exposed to the impact of foreign exchange fluctuations on our investments in wholly-owned foreign subsidiaries denominated in a currency other than the U.S. Dollar, which could adversely impact the U.S. Dollar value of these investments and therefore the value of future repatriated earnings. We have, in the past, hedged and may, in the future, hedge net investment positions in certain foreign subsidiaries to mitigate the effects of foreign exchange fluctuations on these net investments. These hedges are accounted for as net investment hedges in accordance with U.S . GAAP. There were no outstanding net investment hedges as of May 31, 2023 and 2022. There were no cash flows from net investment hedge settlements for the years ended May 31, 2023, 2022 and 2021. LIQUIDITY AND CAPITAL RESOURCES CASH FLOW ACTIVITY Cash provided (used) by operations was an inflow of $5,841 million for fiscal 2023, compared to $5,188 million for fiscal 2022. Net income, adjusted for non-cash items, generated $6,354 million of operating cash inflow for fiscal 2023, compared to $6,848 million for fiscal 2022. The net change in working capital and other assets and liabilities resulted in a decrease to Cash provided (used) by operations of $513 million for fiscal 2023 compared to a decrease of $1,660 million for fiscal 2022. For fiscal 2023, the net change in working capital compared to the prior year was impacted by unfavorable changes in Accounts payable, offset by favorable impacts from Inventories and Accounts receivable. These changes were, in part, due to reduced inventory purchases in the current period and timing of wholesale shipments. Further impacting these changes was a lower available supply of inventory in the prior year due to supply chain constraints. Cash provided (used) by investing activities was an inflow of $564 million for fiscal 2023, compared to an outflow of $1,524 million for fiscal 2022, primarily driven by the net change in short-term investments. For fiscal 2023, the net change in short-term NIKE, INC. 44investments (including sales, maturities and purchases) resulted in a cash inflow of $1,481 million compared to a cash outflow of $747 million for fiscal 2022. Additionally, we continue to invest in our infrastructure to support future growth, specifically focused around digital capabilities, our end-to-end technology foundation, our corporate facilities and improvements across our supply chain. Cash provided (used) by financing activities was an outflow of $7,447 million for fiscal 2023 compared to an outflow of $4,836 million for fiscal 2022. The increased outflow in fiscal 2023 was driven by higher share repurchases of $5,480 million for fiscal 2023 compared to $4,014 million for fiscal 2022, the repayment of $500 million of senior notes that matured in fiscal 2023, as well as lower proceeds from stock option exercises, which resulted in a cash inflow of $651 million in fiscal 2023 compared to $1,151 million in fiscal 2022. In fiscal 2023, we purchased a total of 50.0 million shares of NIKE's Class B Common Stock for $5.5 billion (an average price of $110.32 per share). In August 2022, we terminated the previous four-year, $15 billion share repurchase program approved by the Board of Directors in June 2018. Under this program, we repurchased 6.5 million shares for a total approximate cost of $710.0 million (an average price of $109.85 per share) during the first quarter of fiscal 2023 and 83.8 million shares for a total approximate cost of $9.4 billion (an average price of $111.82 per share) during the term of the program. Upon termination of the four-year, $15 billion program, we began purchasing shares under the new four-year, $18 billion share repurchase plan authorized by the Board of Directors in June 2022. As of May 31, 2023, we had repurchased 43.5 million shares at a cost of approximately $4.8 billion (an average price of $110.38 per share) under this new program. We continue to expect funding of share repurchases will come from operating cash flows. The timing and the amount of share repurchases will be dictated by our capital needs and stock market conditions. CAPITAL RESOURCES On July 21, 2022, we filed a shelf registration statement (the "Shelf") with the U.S. Securities and Exchange Commission (the "SEC") which permits us to issue an unlimited amount of debt securities from time to time. The Shelf expires on July 21, 2025. On March 11, 2022, we entered into a five-year committed credit facility agreement with a syndicate of banks which provides for up to $2 billion of borrowings, with the option to increase borrowings up to $3 billion in total with lender approval. The facility matures on March 11, 2027, with options to extend the maturity date up to an additional two years. This facility replaces the prior $2 billion five-year credit facility agreement entered into on August 16, 2019, which would have matured on August 16, 2024. Refer to Note 5 — Short-Term Borrowings and Credit Lines for additional information. On March 10, 2023, we entered into a 364-day committed credit facility agreement with a syndicate of banks which provides for up to $1 billion of borrowings, with the option to increase borrowings up to $1.5 billion in total with lender approval. The facility matures on March 8, 2024, with an option to extend the maturity date by 364 days. This facility replaces the prior $1 billion 364- day credit facility agreement entered into on March 11, 2022, which matured on March 10, 2023. Refer to Note 5 — Short-Term Borrowings and Credit Lines for additional information. We currently have long-term debt ratings of AA- and A1 from Standard and Poor's Corporation and Moody's Investor Services, respectively. As it relates to our committed credit facilities entered into on March 11, 2022 and March 10, 2023, if our long-term debt ratings were to decline, the facility fees and interest rates would increase. Conversely , if our long-term debt ratings were to improve, the facility fees and interest rates would decrease. Changes in our long-term debt ratings would not trigger acceleration of maturity of any then-outstanding borrowings or any future borrowings under the committed credit facilities. Under these facilities, we have agreed to various covenants. These covenants include limits on the disposal of assets and the amount of debt secured by liens we may incur. In the event we were to have any borrowings outstanding under these facilities, failed to meet any covenant and were unable to obtain a waiver from a majority of the banks in the applicable syndicate, any borrowings would become immediately due and payable. As of May 31, 2023, we were in full compliance with each of these covenants, and we believe it is unlikely we will fail to meet any of these covenants in the foreseeable future. Liquidity is also provided by our $3 billion commercial paper program. As of and for the fiscal years ended May 31, 2023 and 2022, we did not have any borrowings outstanding under our $3 billion program. We may continue to issue commercial paper or other debt securities depending on general corporate needs. To date, we have not experienced difficulty accessing the capital or credit markets; however, future volatility may increase costs associated with issuing commercial paper or other debt instruments or af fect our ability to access those markets. As of May 31, 2023, we had Cash and equivalents and Short-term investments totaling $10.7 billion, primarily consisting of commercial paper, corporate notes, deposits held at major banks, money market funds, U.S. Treasury obligations and other investment grade fixed-income securities. Our fixed-income investments are exposed to both credit and interest rate risk. All of our investments are investment grade to minimize our credit risk. While individual securities have varying durations, as of May 31, 2023, the weighted-average days to maturity of our cash equivalents and short-term investments portfolio was 98 days. 2023 FORM 10-K 45 We believe that existing Cash and equivalents, Short-term investments and cash generated by operations, together with access to external sources of funds as described above, will be sufficient to meet our domestic and foreign capital needs in the foreseeable future. Our material cash requirements as of May 31, 2023, were as follows: • Debt Obligations — Refer to Note 5 — Short-Term Borrowings and Credit Lines and Note 6 — Long-Term Debt in the accompanying Notes to the Consolidated Financial Statements for further information. • Operating Leases — Refer to Note 17 — Leases in the accompanying Notes to the Consolidated Financial Statements for further information. • Endorsement Contracts — As of May 31, 2023, we had endorsement contract obligations of $7.6 billion, with $1.3 billion payable within 12 months, representing approximate amounts of base compensation and minimum guaranteed royalty fees we are obligated to pay athlete, public figure, sport team and league endorsers of our products. Actual payments under some contracts may be higher than these amounts as these contracts provide for bonuses to be paid to the endorsers based upon athletic achievements and/or royalties on product sales in future periods. Actual payments under some contracts may also be lower as these contracts include provisions for reduced payments if athletic performance declines in future periods. In addition to the cash payments, we are obligated to furnish our endorsers with NIK E product for their use. It is not possible to determine how much we will spend on this product on an annual basis as the amount of product provided to the endorsers will depend on many factors and the contracts generally do not stipulate a minimum amount of cash to be spent on the product. • Product Purchase Obligations — As of May 31, 2023, we had product purchase obligations of $6.4 billion, all of which are payable within the next 12 months. Product purchase obligations represent agreements (including open purchase orders) to purchase products in the ordinary course of business that are enforceable and legally binding and specify all significant terms. We generally order product at least four to five months in advance of sale based primarily on advanced orders received from external wholesale customers and internal orders from our direct to consumer operations. In some cases, prices are subject to change throughout the production process. • Other Purchase Obligations — As of May 31, 2023, we had $3.3 billion of other purchase obligations, with $1.7 billion payable within the next 12 months. Other purchase obligations primarily include technology investments, construction, service and marketing commitments, including marketing commitments associated with endorsement contracts, made in the ordinary course of business. The amounts represent the minimum payments required by legally binding contracts and agreements that specify all significant terms, and may include open purchase orders for non-product purchases. In addition to the above, we have long-term obligations for uncertain tax positions and various post-retirement benefits for which we are not able to reasonably estimate when cash payments will occur . Refer to Note 7 — Income Taxes and Note 11 — Benefit Plans in the accompanying Notes to the Consolidated Financial Statements for further information related to uncertain tax positions and post-retirement benefits, respectively. As a part of the transition tax related to the Tax Cuts and Jobs Act, as of May 31, 2023, we had $644 million in estimated future cash payments, with $161 million payable within the next 12 months. These amounts represent the transition tax on deemed repatriation of undistributed earnings of foreign subsidiaries, which are reflected net of foreign tax cre dits we utilized. Refer to Note 16 — Commitments and Contingencies in the accompanying Notes to the Consolidated Financial Statements for further information related to our off-balance sheet arrangements, bank guarantees and letters of credit. OFF-BALANCE SHEET ARRANGEMENTS As of May 31, 2023, we did not have any off-balance sheet arrangements that have, or are reasonably likely to have, a material effect on our current and future financial condition, results of operations, liquidity, capital expenditures or capital resources. In connection with various contracts and agreements, we routinely provide indemnification relating to the enforceability of intellectual property rights, coverage for legal issues that arise and other items where we are acting as the guarantor . Currently, we have several such agreements in place. Based on our historical experience and the estimated probability of future loss, we have determined that the fair value of such indemnification is not material to our financial position or results of operations. NEW ACCOUNTING PRONOUNCEMENTS Refer to Note 1 — Summary of Significant Accounting Policies within the accompanying Notes to the Consolidated Financial Statements for recently adopted and issued accounting standards. NIKE, INC. 46CRITICAL ACCOUNTING ESTIMATES Our previous discussion and analysis of our financial condition and results of operations are based upon our Consolidated Financial Statements, which have been prepared in accordance with U.S. GAAP. The preparation of these financial statements requires us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenues and expenses and related disclosure of contingent assets and liabilities. Note 1 — Summary of Significant Accounting Policies in the accompanying Notes to the Consolidated Financial Statements describes the significant accounting policies and methods used in the preparation of our Consolidated Financial Statements. We believe the assumptions and judgments involved in the accounting estimates described below have the greatest potential impact on our Consolidated Financial Statements, so we consider these to be our critical accounting estimates. Management has reviewed and discussed these critical accounting estimates with the Audit & Finance Committee of the Board of Directors. Because of the uncertainty inherent in these matters, actual results could differ from the estimates we use in the preparation of our Consolidated Financial Statements. Within the context of these critical accounting estimates, we are not currently aware of any reasonably likely events or circumstances that would result in materially dif ferent amounts being reported. SALES-RELATED RESERVES Provisions for anticipated sales returns consist of both contractual return rights and discretionary authorized returns. Provisions for post-invoice sales discounts consist of both contractual programs and discretionary discounts that are expected to be granted at a later date. Estimates of discretionary authorized returns, discounts and claims are based on (1) historical rates, (2) specific identification of outstanding returns not yet received from customers and outstanding discounts and claims and (3) estimated returns, discounts and claims expected but not yet finalized with customers. Actual returns, discounts and claims in any future period are inherently uncertain and may differ from estimates recorded. If actual or expected future returns, discounts or claims were significantly different than reserves established, a reduction or increase to net revenues would be recorded in the period in which such determination was made. Refer to Note 14 — Revenues in the accompanying Notes to the Consolidated Financial Statements for additional information. INVENTORY RESERVES We make ongoing estimates relating to the net realizable value of inventories based upon our assumptions about future demand and market conditions. If we estimate the net realizable value of our inventory is less than the cost of the inventory recorded on our books, we record a reserve equal to the difference between the cost of the inventory and the estimated net realizable value. This reserve is recorded as a charge to Cost of sales. If changes in market conditions result in reductions to the estimated net realizable value of our inventory below our previous estimate, we would increase our reserve in the period in which we made such a determination. HEDGE ACCOUNTING FOR DERIVATIVES We use derivative contracts to hedge certain anticipated foreign currency and interest rate transactions as well as certain non- functional currency monetary assets and liabilities. When the specific criteria to qualify for hedge accounting has been met, changes in the fair value of contracts hedging probable forecasted future cash flows are recorded in Accumulated other comprehensive income (loss), rather than Net income, until the underlying hedged transaction af fects Net income. In most cases, this results in gains and losses on hedge derivatives being released from Accumulated other comprehensive income (loss) into Net income sometime after the maturity of the derivative. One of the criteria for this accounting treatment is that the notional value of these derivative contracts should not be in excess of the designated amount of anticipated transactions. B y their very nature, our estimates of anticipated transactions may fluctuate over time and may ultimately vary from actual transactions. When the designated amount of anticipated or actual transactions decline below hedged levels, or if it is no longer probable a forecasted transaction will occur by the end of the originally specified time period or within an additional two-month period of time thereafter, we reclassify the cumulative change in fair value of the over-hedged portion of the related hedge contract from Accumulated other comprehensive income (loss) to Other (income) expense, net during the quarter in which the decrease occurs. In rare circumstances, the additional period of time may exceed two months due to extenuating circumstances related to the nature of the forecasted transaction that are outside our control or influence. Refer to Note 12 — Risk Management and Derivatives in the accompanying Notes to the Consolidated Financial Statements for additional information. 2023 FORM 10-K 47 INCOME TAXES We are subject to taxation in the United States, as well as various state and foreign jurisdictions. The determination of our provision for income taxes requires significant judgment, the use of estimates and the interpretation and application of complex tax laws. On an interim basis, we estimate our effective tax rate for the full fiscal year. This estimated annual effective tax rate is then applied to the year-to-date Income before income taxes excluding infrequently occurring or unusual items, to determine the year-to-date Income tax expense. The income tax effects of infrequent or unusual items are recognized in the interim period in which they occur. As the fiscal year progresses, we continually refine our estimate based upon actual events and earnings by jurisdiction during the year. This continual estimation process periodically results in a change to our expected effective tax rate for the fiscal year. When this occurs, we adjust the income tax provision during the quarter in which the change in estimate occurs. On a quarterly basis, we evaluate the probability a tax position will be ef fectively sustained and the appropriateness of the amount recognized for uncertain tax positions based on factors including changes in facts or circumstances, changes in tax law , settled audit issues and new audit activity. Changes in our assessment may result in the recognition of a tax benefit or an additional charge to the tax provision in the period our assessment changes. W e recognize interest and penalties related to income tax matters in Income tax expense. Refer to Note 7 — Income Taxes in the accompanying Notes to the Consolidated Financial Statements for additional information. OTHER CONTINGENCIES In the ordinary course of business, we are subject to various legal proceedings, claims and government investigations related to our business, products and actions of our employees and representatives, including contractual and employment relationships, product liability, antitrust, customs, tax, intellectual property and other matters. We record contingent liabilities resulting from claims against us when a loss is assessed to be probable and the amount of the loss is reasonably estimable. Assessing probability of loss and estimating probable losses requires analysis of multiple factors, including in some cases judgments about the potential actions of third-party claimants and courts. Recorded contingent liabilities are based on the best information available and actual losses in any future period are inherently uncertain. If future adjustments to estimated probable future losses or actual losses exceed our recorded liability for such claims, we would record additional charges during the period in which the actual loss or change in estimate occurred. In addition to contingent liabilities recorded for probable losses, we disclose contingent liabilities when there is a reasonable possibility the ultimate loss will materially exceed the recorded liability . Refer to Note 16 — Commitments and Contingencies in the accompanying Notes to the Consolidated Financial Statements for additional information. NIKE, INC. 48ITEM 7A. QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK In the normal course of business and consistent with established policies and procedures, we employ a variety of financial instruments to manage exposure to fluctuations in the value of foreign currencies and interest rates. It is our policy to utilize these financial instruments only where necessary to finance our business and manage such exposures; we do not enter into these transactions for trading or speculative purposes. We are exposed to foreign currency fluctuations, primarily as a result of our international sales, product sourcing and funding activities. Our foreign exchange risk management program is intended to lessen both the positive and negative ef fects of currency fluctuations on our consolidated results of operations, financial position and cash flows. W e use forward and option contracts to hedge certain anticipated, but not yet firmly committed, transactions as well as certain firm commitments and the related receivables and payables, including third-party and intercompany transactions. Where exposures are hedged, our program has the effect of delaying the impact of exchange rate movements on our Consolidated Financial Statements. The timing for hedging exposures, as well as the type and duration of the hedge instruments employed, are guided by our hedging policies and determined based upon the nature of the exposure and prevailing market conditions. Typically, the Company may enter into hedge contracts starting 12 to 24 months in advance of the forecasted transaction and may place incremental hedges up to 100% of the exposure by the time the forecasted transaction occurs. The majority of derivatives outstanding as of May 31, 2023, are designated as foreign currency cash flow hedges, primarily for Euro/U.S. Dollar, British Pound/Euro, Chinese Yuan/U.S. Dollar, and Japanese Yen/U.S. Dollar currency pairs. Refer to Note 12 — Risk Management and Derivatives in the accompanying Notes to the Consolidated Financial Statements for additional information. Our earnings are also exposed to movements in short- and long-term market interest rates. Our objective in managing this interest rate exposure is to limit the impact of interest rate changes on earnings and cash flows and to reduce overall borrowing costs. To achieve these objectives, we maintain a mix of commercial paper, bank loans, and fixed-rate debt of varying maturities. MARKET RISK MEASUREMENT We monitor foreign exchange risk, interest rate risk and related derivatives using a variety of techniques including a review of market value, sensitivity analysis and Value-at-Risk ("VaR"). Our market-sensitive derivative and other financial instruments are foreign currency forward contracts, foreign currency option contracts, intercompany loans denominated in non-functional currencies and fixed interest rate U.S. Dollar denominated debt. We use VaR to monitor the foreign exchange risk of our foreign currency forward and foreign currency option derivative instruments only. The VaR determines the maximum potential one-day loss in the fair value of these foreign exchange rate- sensitive financial instruments. The VaR model estimates assume normal market conditions and a 95% confidence level. There are various modeling techniques that can be used in the VaR computation. Our computations are based on interrelationships between currencies and interest rates (a "variance/co-variance" technique). These interrelationships are a function of foreign exchange currency market changes and interest rate changes over the preceding one-year period. The value of foreign currency options does not change on a one-to-one basis with changes in the underlying currency rate. W e adjust the potential loss in option value for the estimated sensitivity (the "delta" and "gamma") to changes in the underlying currency rate. This calculation reflects the impact of foreign currency rate fluctuations on the derivative instruments only and does not include the impact of such rate fluctuations on non-functional currency transactions (such as anticipated transactions, firm commitments, cash balances and accounts and loans receivable and payable), including those which are hedged by these instruments. The VaR model is a risk analysis tool and does not purport to represent actual losses in fair value we will incur nor does it consider the potential effect of favorable changes in market rates. It also does not represent the full extent of the possible loss that may occur. Actual future gains and losses will differ from those estimated because of changes or differences in market rates and interrelationships, hedging instruments and hedge percentages, timing and other factors. The estimated maximum one-day loss in fair value on our foreign currency sensitive derivative financial instruments, derived using the VaR model, was $111 million and $99 million as of May 31, 2023 and 2022, respectively. The VaR increased year-over- year as a result of an increase in foreign currency volatilities as of May 31, 2023. Such a hypothetical loss in the fair value of our derivatives would be offset by increases in the value of the underlying transactions being hedged. The average monthly change in the fair values of foreign currency forward and foreign currency option derivative instruments was $289 million and $170 million during fiscal 2023 and fiscal 2022, respectively. The instruments not included in the VaR are intercompany loans denominated in non-functional currencies and fixed interest rate U.S. Dollar denominated debt. Intercompany loans and related interest amounts are eliminated in consolidation. Furthermore, our non-functional currency intercompany loans are substantially hedged against foreign exchange risk through the use of forward 2023 FORM 10-K 49 contracts, which are included in the VaR calculation above. Therefore, we consider the interest rate and foreign currency market risks associated with our non-functional currency intercompany loans to be immaterial to our consolidated financial position, results of operations and cash flows. Details of third-party debt are provided in the table below. The table presents principal cash flows and related weighted average interest rates by expected maturity dates. EXPECTED MATURITY DATE YEAR ENDING MAY 31, (Dollars in millions) 2024 2025 2026 2027 2028 THEREAFTER TOTAL FAIR VALUE Interest Rate Risk Long-term U.S. Dollar debt — Fixed rate Principal payments $ — $ 1,000 $ — $ 2,000 $ — $ 6,000 $ 9,000 $ 7,889 Average interest rate 0.0 % 2.4 % 0.0 % 2.6 % 0.0 % 3.3 % 3.1 % NIKE, INC. 50ITEM 8. FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA Management of NIKE, Inc. is responsible for the information and representations contained in this Annual Report. The financial statements have been prepared in conformity with accounting principles generally accepted in the United S tates of America ("U.S. GAAP") and include certain amounts based on our best estimates and judgments. Other financial information in this Annual Report is consistent with these financial statements. Our accounting systems include controls designed to reasonably assure assets are safeguarded from unauthorized use or disposition and provide for the preparation of financial statements in conformity with U.S . GAAP. These systems are supplemented by the selection and training of qualified financial personnel and an organizational structure providing for appropriate segregation of duties. An internal corporate audit department reviews the results of its work with the Audit & Finance Committee of the Board of Directors, presently comprised of four outside, independent directors. The Audit & Finance Committee is responsible for the appointment of the independent registered public accounting firm and reviews, with the independent registered public accounting firm, management and the internal corporate audit staff, the scope and the results of the annual audit, the effectiveness of the accounting control system and other matters relating to the financial af fairs of NIKE as the Audit & Finance Committee deems appropriate. The independent registered public accounting firm and the internal corporate auditors have full access to the Audit & Finance Committee, with and without the presence of management, to discuss any appropriate matters. 2023 FORM 10-K 51 MANAGEMENT'S ANNUAL REPORT ON INTERNAL CONTROL OVER FINANCIAL REPORTING Management is responsible for establishing and maintaining adequate internal control over financial reporting, as such term is defined in Rule 13(a) - 15(f) and Rule 15(d) - 15(f) of the Securities Exchange Act of 1934, as amended. Internal control over financial reporting is a process designed to provide reasonable assurance regarding the reliability of financial reporting and the preparation of the financial statements for external purposes in accordance with generally accepted accounting principles in the United States of America. Internal control over financial reporting includes those policies and procedures that: (i) pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of assets of the Company; (ii) provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted accounting principles, and that receipts and expenditures of the Company are being made only in accordance with authorizations of our management and directors; and (iii) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use or disposition of assets of the Company that could have a material effect on the financial statements. Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate. Under the supervision and with the participation of our Chief Executive Officer and Chief Financial Officer, our management conducted an evaluation of the effectiveness of our internal control over financial reporting based upon the framework in Internal Control — Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (COSO). Based on the results of our evaluation, our management concluded that our internal control over financial reporting was effective as of May 31, 2023. PricewaterhouseCoopers LLP, an independent registered public accounting firm, has audited (1) the Consolidated Financial Statements and (2) the effectiveness of our internal control over financial reporting as of May 31, 2023, as stated in their report herein. John J. Donahoe II Matthew Friend President and Chief Executive Officer Executive Vice President and Chief Financial Officer NIKE, INC. 52Report of Independent Registered Public Accounting Firm To the Board of Directors and Shareholders of NIKE, Inc. Opinions on the Financial Statements and Internal Control over Financial Reporting We have audited the accompanying consolidated balance sheets of NIKE, Inc. and its subsidiaries (the “Company”) as of May 31, 2023 and 2022, and the related consolidated statements of income, of comprehensive income, of shareholders' equity and of cash flows for each of the three years in the period ended May 31, 2023, including the related notes and financial statement schedule listed in the index appearing under Item 15(a)(2) (collectively referred to as the “consolidated financial statements”). W e also have audited the Company's internal control over financial reporting as of May 31, 2023, based on criteria established in Internal Control - Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (COSO). In our opinion, the consolidated financial statements referred to above present fairly , in all material respects, the financial position of the Company as of May 31, 2023 and 2022, and the results of its operations and its cash flows for each of the three years in the period ended May 31, 2023 in conformity with accounting principles generally accepted in the United S tates of America. Also in our opinion, the Company maintained, in all material respects, ef fective internal control over financial reporting as of May 31, 2023, based on criteria established in Internal Control - Integrated Framework (2013) issued by the COSO. Basis for Opinions The Company's management is responsible for these consolidated financial statements, for maintaining ef fective internal control over financial reporting, and for its assessment of the effectiveness of internal control over financial reporting, included in the accompanying Management’s Annual Report on Internal Control over Financial Reporting. Our responsibility is to express opinions on the Company’s consolidated financial statements and on the Company's internal control over financial reporting based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) (PCAOB) and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB. We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audits to obtain reasonable assurance about whether the consolidated financial statements are free of material misstatement, whether due to error or fraud, and whether effective internal control over financial reporting was maintained in all material respects. Our audits of the consolidated financial statements included performing procedures to assess the risks of material misstatement of the consolidated financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the consolidated financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the consolidated financial statements. Our audit of internal control over financial reporting included obtaining an understanding of internal control over financial reporting, assessing the risk that a material weakness exists, and testing and evaluating the design and operating ef fectiveness of internal control based on the assessed risk. Our audits also included performing such other procedures as we considered necessary in the circumstances. W e believe that our audits provide a reasonable basis for our opinions. Definition and Limitations of Internal Control over Financial Reporting A company’s internal control over financial reporting is a process designed to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles. A company’s internal control over financial reporting includes those policies and procedures that (i) pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of the assets of the company; (ii) provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted accounting principles, and that receipts and expenditures of the company are being made only in accordance with authorizations of management and directors of the company; and (iii) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use, or disposition of the company’s assets that could have a material effect on the financial statements. Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate. 2023 FORM 10-K 53 Critical Audit Matters The critical audit matter communicated below is a matter arising from the current period audit of the consolidated financial statements that was communicated or required to be communicated to the audit committee and that (i) relates to accounts or disclosures that are material to the consolidated financial statements and (ii) involved our especially challenging, subjective, or complex judgments. The communication of critical audit matters does not alter in any way our opinion on the consolidated financial statements, taken as a whole, and we are not, by communicating the critical audit matter below , providing a separate opinion on the critical audit matter or on the accounts or disclosures to which it relates. Accounting for Income Taxes As described in Notes 1 and 7 to the consolidated financial statements, the Company recorded income tax expense of $1,131 million for the year ended May 31, 2023, and has net deferred tax assets of $1,799 million, including a valuation allowance of $22 million, and total gross unrecognized tax benefits, excluding related interest and penalties, of $936 million as of May 31, 2023, $651 million of which would affect the Company's effective tax rate if recognized in future periods. The realization of deferred tax assets is dependent on future taxable earnings. Management assesses the scheduled reversal of deferred tax liabilities, projected future taxable income and available tax planning strategies and considers foreign tax credit utilization in making this assessment of realization. A valuation allowance is established against the net deferred tax asset to the extent that recovery is not likely. The Company is subject to taxation in the United States, as well as various state and foreign jurisdictions. As disclosed by management, the use of significant judgment and estimates, as well as the interpretation and application of complex tax laws is required by management to determine the Company's provision for income taxes. The principal considerations for our determination that performing procedures relating to the accounting for income taxes is a critical audit matter are a high degree of auditor judgment, subjectivity and ef fort in performing procedures and evaluating audit evidence relating to management's assessment of complex tax laws and regulations as it relates to determining the provision for income taxes. In addition, the audit effort involved the use of professionals with specialized skill and knowledge. Addressing the matter involved performing procedures and evaluating audit evidence in connection with forming our overall opinion on the consolidated financial statements. These procedures included testing the effectiveness of controls relating to income taxes, evaluating changes in and compliance with tax laws, and testing the calculation of the provision of income taxes. Professionals with specialized skill and knowledge were used to assist in evaluating changes in and compliance with the tax laws and regulations and the provision for income taxes. /s/ PricewaterhouseCoopers LLP Portland, Oregon July 20, 2023 We have served as the Company's auditor since 1974. NIKE, INC. 54NIKE, INC. CONSOLIDATED STATEMENTS OF INCOME YEAR ENDED MAY 31, (In millions, except per share data) 2023 2022 2021 Revenues $ 51,217 $ 46,710 $ 44,538 Cost of sales 28,925 25,231 24,576 Gross profit 22,292 21,479 19,962 Demand creation expense 4,060 3,850 3,114 Operating overhead expense 12,317 10,954 9,911 Total selling and administrative expense 16,377 14,804 13,025 Interest expense (income), net (6) 205 262 Other (income) expense, net (280) (181) 14 Income before income taxes 6,201 6,651 6,661 Income tax expense 1,131 605 934 NET INCOME $ 5,070 $ 6,046 $ 5,727 Earnings per common share: Basic $ 3.27 $ 3.83 $ 3.64 Diluted $ 3.23 $ 3.75 $ 3.56 Weighted average common shares outstanding: Basic 1,551.6 1,578.8 1,573.0 Diluted 1,569.8 1,610.8 1,609.4 The accompanying Notes to the Consolidated Financial Statements are an integral part of this statement. 2023 FORM 10-K 55 NIKE, INC. CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME YEAR ENDED MAY 31, (Dollars in millions) 2023 2022 2021 Net income $ 5,070 $ 6,046 $ 5,727 Other comprehensive income (loss), net of tax: Change in net foreign currency translation adjustment 267 (522) 496 Change in net gains (losses) on cash flow hedges (348) 1,214 (825) Change in net gains (losses) on other (6) 6 5 Total other comprehensive income (loss), net of tax (87) 698 (324) TOTAL COMPREHENSIVE INCOME $ 4,983 $ 6,744 $ 5,403 The accompanying Notes to the Consolidated Financial Statements are an integral part of this statement. NIKE, INC. 56NIKE, INC. CONSOLIDATED BALANCE SHEETS MAY 31, (In millions) 2023 2022 ASSETS Current assets: Cash and equivalents $ 7,441 $ 8,574 Short-term investments 3,234 4,423 Accounts receivable, net 4,131 4,667 Inventories 8,454 8,420 Prepaid expenses and other current assets 1,942 2,129 Total current assets 25,202 28,213 Property, plant and equipment, net 5,081 4,791 Operating lease right-of-use assets, net 2,923 2,926 Identifiable intangible assets, net 274 286 Goodwill 281 284 Deferred income taxes and other assets 3,770 3,821 TOTAL ASSETS $ 37,531 $ 40,321 LIABILITIES AND SHAREHOLDERS' EQUITY Current liabilities: Current portion of long-term debt $ — $ 500 Notes payable 6 10 Accounts payable 2,862 3,358 Current portion of operating lease liabilities 425 420 Accrued liabilities 5,723 6,220 Income taxes payable 240 222 Total current liabilities 9,256 10,730 Long-term debt 8,927 8,920 Operating lease liabilities 2,786 2,777 Deferred income taxes and other liabilities 2,558 2,613 Commitments and contingencies (Note 16) Redeemable preferred stock — — Shareholders' equity: Common stock at stated value: Class A convertible — 305 and 305 shares outstanding — — Class B — 1,227 and 1,266 shares outstanding 3 3 Capital in excess of stated value 12,412 11,484 Accumulated other comprehensive income (loss) 231 318 Retained earnings (deficit) 1,358 3,476 Total shareholders' equity 14,004 15,281 TOTAL LIABILITIES AND SHAREHOLDERS' EQUITY $ 37,531 $ 40,321 The accompanying Notes to the Consolidated Financial Statements are an integral part of this statement. 2023 FORM 10-K 57 NIKE, INC. CONSOLIDATED STATEMENTS OF CASH FLOWS YEAR ENDED MAY 31, (Dollars in millions) 2023 2022 2021 Cash provided (used) by operations: Net income $ 5,070 $ 6,046 $ 5,727 Adjustments to reconcile net income to net cash provided (used) by operations: Depreciation 703 717 744 Deferred income taxes (117) (650) (385) Stock-based compensation 755 638 611 Amortization, impairment and other 156 123 53 Net foreign currency adjustments (213) (26) (138) Changes in certain working capital components and other assets and liabilities: (Increase) decrease in accounts receivable 489 (504) (1,606) (Increase) decrease in inventories (133) (1,676) 507 (Increase) decrease in prepaid expenses, operating lease right-of-use assets and other current and non-current assets (644) (845) (182) Increase (decrease) in accounts payable, accrued liabilities, operating lease liabilities and other current and non-current liabilities (225) 1,365 1,326 Cash provided (used) by operations 5,841 5,188 6,657 Cash provided (used) by investing activities: Purchases of short-term investments (6,059) (12,913) (9,961) Maturities of short-term investments 3,356 8,199 4,236 Sales of short-term investments 4,184 3,967 2,449 Additions to property, plant and equipment (969) (758) (695) Other investing activities 52 (19) 171 Cash provided (used) by investing activities 564 (1,524) (3,800) Cash provided (used) by financing activities: Increase (decrease) in notes payable, net (4) 15 (52) Repayment of borrowings (500) — (197) Proceeds from exercise of stock options and other stock issuances 651 1,151 1,172 Repurchase of common stock (5,480) (4,014) (608) Dividends — common and preferred (2,012) (1,837) (1,638) Other financing activities (102) (151) (136) Cash provided (used) by financing activities (7,447) (4,836) (1,459) Effect of exchange rate changes on cash and equivalents (91) (143) 143 Net increase (decrease) in cash and equivalents (1,133) (1,315) 1,541 Cash and equivalents, beginning of year 8,574 9,889 8,348 CASH AND EQUIVALENTS, END OF YEAR $ 7,441 $ 8,574 $ 9,889 Supplemental disclosure of cash flow information: Cash paid during the year for: Interest, net of capitalized interest $ 347 $ 290 $ 293 Income taxes 1,517 1,231 1,177 Non-cash additions to property, plant and equipment 211 160 179 Dividends declared and not paid 524 480 438 The accompanying Notes to the Consolidated Financial Statements are an integral part of this statement. NIKE, INC. 58NIKE, INC. CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY Balance at May 31, 2020 315 $ — 1,243 $ 3 $ 8,299 $ (56) $ (191) $ 8,055 Stock options exercised 21 954 954 Conversion to Class B Common Stock (10) 10 — Repurchase of Class B Common Stock (5) (28) (622) (650) Dividends on common stock ($1.070 per share) and preferred stock ($0.10 per share) (1,692) (1,692) Issuance of shares to employees, net of shares withheld for employee taxes 4 129 (43) 86 Stock-based compensation 611 611 Net income 5,727 5,727 Other comprehensive income (loss) (324) (324) Balance at May 31, 2021 305 $ — 1,273 $ 3 $ 9,965 $ (380) $ 3,179 $ 12,767 Stock options exercised 17 924 924 Repurchase of Class B Common Stock (27) (186) (3,808) (3,994) Dividends on common stock ($1.190 per share) and preferred stock ($0.10 per share) (1,886) (1,886) Issuance of shares to employees, net of shares withheld for employee taxes 3 143 (55) 88 Stock-based compensation 638 638 Net income 6,046 6,046 Other comprehensive income (loss) 698 698 Balance at May 31, 2022 305 $ — 1,266 $ 3 $ 11,484 $ 318 $ 3,476 $ 15,281 Stock options exercised 8 421 421 Repurchase of Class B Common Stock (51) (378) (5,131) (5,509) Dividends on common stock ($1.325 per share) and preferred stock ($0.10 per share) (2,059) (2,059) Issuance of shares to employees, net of shares withheld for employee taxes 4 130 2 132 Stock-based compensation 755 755 Net income 5,070 5,070 Other comprehensive income (loss) (87) (87) Balance at May 31, 2023 305 $ — 1,227 $ 3 $ 12,412 $ 231 $ 1,358 $ 14,004 COMMON STOCK CAPITAL IN EXCESS OF STATED VALUEACCUMULATED OTHER COMPREHENSIVE INCOME (LOSS)RETAINED EARNINGS (DEFICIT) TOTALCLASS A CLASS B (In millions, except per share data) SHARES AMOUNT SHARES AMOUNT The accompanying Notes to the Consolidated Financial Statements are an integral part of this statement. 2023 FORM 10-K 59 NOTES TO CONSOLIDATED FINANCIAL STATEMENTS Note 1 Summary of Significant Accounting Policies 61 Note 2 Property, Plant and Equipment 67 Note 3 Accrued Liabilities 67 Note 4 Fair Value Measurements 68 Note 5 Short-Term Borrowings and Credit Lines 70 Note 6 Long-Term Debt 71 Note 7 Income Taxes 72 Note 8 Redeemable Preferred Stock 74 Note 9 Common Stock and Stock-Based Compensation 74 Note 10 Earnings Per Share 77 Note 11 Benefit Plans 77 Note 12 Risk Management and Derivatives 77 Note 13 Accumulated Other Comprehensive Income (Loss) 81 Note 14 Revenues 83 Note 15 Operating Segments and Related Information 84 Note 16 Commitments and Contingencies 88 Note 17 Leases 88 Note 18 Acquisitions and Divestitures 89 Note 19 Restructuring 90 NIKE, INC. 60NOTE 1 — SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES DESCRIPTION OF BUSINESS NIKE, Inc. is a worldwide leader in the design, development and worldwide marketing and selling of athletic footwear, apparel, equipment, accessories and services. NIKE, Inc. portfolio brands include the NIKE Brand, Jordan Brand and Converse. The NIKE Brand is focused on performance athletic footwear, apparel, equipment, accessories and services across Men's, Women's and Kids', amplified with sport-inspired lifestyle products carrying the Swoosh trademark, as well as other NIKE Brand trademarks. The Jordan Brand is focused on athletic and casual footwear, apparel and accessories using the Jumpman trademark. Sales and operating results of Jordan Brand products are reported within the respective NIKE Brand geographic operating segments. Converse designs, distributes, licenses and sells casual sneakers, apparel and accessories under the Converse, Chuck Taylor, All Star, One Star, Star Chevron and Jack Purcell trademarks. In some markets outside the U.S., these trademarks are licensed to third parties who design, distribute, market and sell similar products. Operating results of the Converse brand are reported on a stand-alone basis. BASIS OF CONSOLIDATION The Consolidated Financial Statements include the accounts of NIKE, Inc. and its subsidiaries (the "Company" or "NIKE"). All significant intercompany transactions and balances have been eliminated . REVENUE RECOGNITION Revenue transactions associated with the sale of NIKE Brand footwear, apparel and equipment, as well as Converse products, comprise a single performance obligation, which consists of the sale of products to customers either through wholesale or direct to consumer channels. The Company satisfies the performance obligation and records revenues when transfer of control to the customer has occurred, based on the terms of sale. A customer is considered to have control once they are able to direct the use and receive substantially all of the benefits of the product. Control is transferred to wholesale customers upon shipment or upon receipt depending on the country of the sale and the agreement with the customer. Control transfers to retail store customers at the time of sale and to substantially all digital commerce customers upon shipment. The transaction price is determined based upon the invoiced sales price, less anticipated sales returns, discounts and miscellaneous claims from customers. P ayment terms for wholesale transactions depend on the country of sale or agreement with the customer and payment is generally required within 90 days or less of shipment to or receipt by the wholesale customer. Payment is due at the time of sale for retail store and digital commerce transactions. Consideration for trademark licensing contracts is earned through sales-based or usage-based royalty arrangements, and the associated revenues are recognized over the license period. Taxes assessed by governmental authorities that are both imposed on and concurrent with a specific revenue-producing transaction, and are collected by the Company from a customer, are excluded from Revenues and Cost of sales in the Consolidated Statements of Income. Shipping and handling costs associated with outbound freight after control over a product has transferred to a customer are accounted for as fulfillment costs and are included in Cost of sales when the related revenues are recognized. SALES-RELATED RESERVES Consideration promised in the Company's contracts with customers is variable due to anticipated reductions, such as sales returns, discounts and miscellaneous claims from customers. The Company estimates the most likely amount it will be entitled to receive and records an anticipated reduction against Revenues, with an of fsetting increase to Accrued liabilities at the time revenues are recognized. The estimated cost of inventory for product returns is recorded in Prepaid expenses and other current assets on the Consolidated Balance Sheets. The provision for anticipated sales returns consists of both contractual return rights and discretionary authorized returns. Provisions for post-invoice sales discounts consist of both contractual programs and discretionary discounts that are expected to be granted at a later date. Estimates of discretionary authorized returns, discounts and claims are based on (1) historical rates, (2) specific identification of outstanding returns not yet received from customers and outstanding discounts and claims and (3) estimated returns, discounts and claims expected but not yet finalized with customers. Actual returns, discounts and claims in any future period are inherently uncertain and thus may differ from estimates recorded. If actual or expected future returns, discounts or claims are significantly greater or lower than the reserves established, a reduction or increase to net Revenues is recorded in the period in which such determination is made. 2023 FORM 10-K 61 COST OF SALES Cost of sales consists primarily of inventory costs, as well as warehousing costs (including the cost of warehouse labor), third- party royalties, certain foreign currency hedge gains and losses and product design costs. Shipping and handling costs are expensed as incurred and included in Cost of sales. DEMAND CREATION EXPENSE Demand creation expense consists of advertising and promotion costs, including costs of endorsement contracts, complimentary products, television, digital and print advertising as well as media costs, brand events and retail brand presentation. Advertising production costs are expensed the first time an advertisement is run. Advertising media costs are expensed when the advertisement appears. Costs related to brand events are expensed when the event occurs. Costs related to retail brand presentation are expensed when the presentation is complete and delivered. A significant amount of the Company's promotional expenses result from payments under endorsement contracts. In general, endorsement payments are expensed on a straight-line basis over the term of the contract. However , certain contracts contain elements that may be accounted for differently based upon the facts and circumstances of each individual contract. Prepayments made under contracts are included in Prepaid expenses and other current assets or Deferred income taxes and other assets depending on the period to which the prepayment applies. Certain contracts provide for contingent payments to endorsers based upon specific achievements in their sport (e.g., winning a championship). The Company records Demand creation expense for these amounts when the endorser achieves the specific goal. Certain contracts provide for variable payments based upon endorsers maintaining a level of performance in their sport over an extended period of time (e.g., maintaining a specified ranking in a sport for a year). When the Company determines payments are probable, the amounts are reported in Demand creation expense ratably over the contract period based on the Company's best estimate of the endorser's performance. In these instances, to the extent actual payments to the endorser dif fer from the Company's estimate due to changes in the endorser's performance, adjustments to Demand creation expense may be recorded in a future period. Certain contracts provide for royalty payments to endorsers based upon a predetermined percent of sales of particular products, which the Company records in Cost of sales as the related sales occur . For contracts containing minimum guaranteed royalty payments, the Company records the amount of any guaranteed payment in excess of that earned through sales of product within Demand creation expense. Through cooperative advertising programs, the Company reimburses its wholesale customers for certain costs of advertising the Company's products. To the extent the Company receives a distinct good or service in exchange for consideration paid to the customer that does not exceed the fair value of that good or service, the amounts reimbursed are recorded in Demand creation expense. Total Demand creation expense was $4,060 million, $3,850 million and $3,114 million for the years ended May 31, 2023, 2022 and 2021, respectively. Prepaid advertising and promotion expenses totaled $755 million and $773 million at May 31, 2023 and 2022, respectively, of which $372 million and $329 million, respectively, were recorded in Prepaid expenses and other current assets, and $383 million and $444 million, respectively, were recorded in Deferred income taxes and other assets, depending on the period to which the prepayment applied. OPERATING OVERHEAD EXPENSE Operating overhead expense consists primarily of wage and benefit-related expenses, research and development costs, bad debt expense as well as other administrative expenses such as rent, depreciation and amortization, professional services, certain technology investments, meetings and travel. CASH AND EQUIVALENTS Cash and equivalents represent cash and short-term, highly liquid investments, that are both readily convertible to known amounts of cash and so near their maturity they present insignificant risk of changes in value because of changes in interest rates, with maturities three months or less at the date of purchase. NIKE, INC. 62SHORT-TERM INVESTMENTS Short-term investments consist of highly liquid investments with maturities over three months at the date of purchase. At May 31, 2023 and 2022, Short-term investments consisted of available-for-sale debt securities, which are recorded at fair value with unrealized gains and losses reported, net of tax, in Accumulated other comprehensive income (loss), unless unrealized losses are determined to be unrecoverable. Realized gains and losses on the sale of securities are determined by specific identification. The Company considers all available-for-sale debt securities, including those with maturity dates beyond 12 months, as available to support current operational liquidity needs and, therefore, classifies all securities with maturity dates beyond three months at the date of purchase as current assets within Short-term investments on the Consolidated Balance Sheets. Refer to Note 4 — Fair Value Measurements for more information on the Company's Short-term investments. ALLOWANCE FOR UNCOLLECTIBLE ACCOUNTS RECEIVABLE Accounts receivable, net consist primarily of amounts due from customers. The Company makes ongoing estimates relating to the collectability of its accounts receivable and maintains an allowance for expected losses resulting from the inability of its customers to make required payments. In addition to judgments about the creditworthiness of significant customers based on ongoing credit evaluations, the Company considers historical levels of credit losses, as well as macroeconomic and industry trends to determine the amount of the allowance. The allowance for uncollectible accounts receivable was $35 million and $34 million as of May 31, 2023 and 2022, respectively. INVENTORY VALUATION Inventories, substantially all of which are finished goods, are stated at lower of cost and net realizable value and valued on either an average or a specific identification cost basis. In some instances, the Company ships products directly from its suppliers to the customer, with the related inventory and cost of sales recognized on a specific identification basis. Inventory costs primarily consist of product cost from the Company's suppliers, as well as inbound freight, import duties, taxes, insurance, logistics and other handling fees. PROPERTY, PLANT AND EQUIPMENT AND DEPRECIATION Property, plant and equipment are recorded at cost. Depreciation is determined on a straight-line basis for land improvements, buildings and leasehold improvements over 2 to 40 years and for machinery and equipment over 2 to 15 years. Depreciation and amortization of assets used in manufacturing, warehousing and product distribution are recorded in Cost of sales. Depreciation and amortization of all other assets are recorded in Operating overhead expense. SOFTWARE DEVELOPMENT COSTS Expenditures for major software purchases and software developed for internal use are capitalized and amortized over 2 to 12 years on a straight-line basis. The Company's policy provides for the capitalization of external direct costs associated with developing or obtaining internal use computer software. The Company also capitalizes certain payroll and payroll-related costs for employees who are directly associated with internal use computer software projects. The amount of capitalizable payroll costs with respect to these employees is limited to the time directly spent on such projects. Costs associated with preliminary project stage activities, training, maintenance and all other post-implementation stage activities are expensed as incurred. Development costs of computer software to be sold, leased or otherwise marketed as an integral part of a product are subject to capitalization beginning when a product's technological feasibility has been established and ending when a product is available for general release to customers. In most instances, the Company's products are released soon after technological feasibility has been established; therefore, software development costs incurred subsequent to achievement of technological feasibility are usually not significant, and generally, most software development costs have been expensed as incurred. 2023 FORM 10-K 63 IMPAIRMENT OF LONG-LIVED ASSETS The Company reviews the carrying value of long-lived assets or asset groups to be used in operations whenever events or changes in circumstances indicate the carrying amount of the assets might not be recoverable. Factors that would necessitate an impairment assessment include a significant adverse change in the extent or manner in which an asset is used, a significant adverse change in legal factors or the business climate that could af fect the value of the asset or a significant decline in the observable market value of an asset, among others. If such facts indicate a potential impairment, the Company would assess the recoverability of an asset group by determining if the carrying value of the asset group exceeds the sum of the projected undiscounted cash flows expected to result from the use and eventual disposition of the assets over the remaining economic life of the primary asset in the asset group. If the recoverability test indicates that the carrying value of the asset group is not recoverable, the Company will estimate the fair value of the asset group using appropriate valuation methodologies, which would typically include an estimate of discounted cash flows. Any impairment would be measured as the difference between the asset group's carrying amount and its estimated fair value. GOODWILL AND INDEFINITE-LIVED INTANGIBLE ASSETS The Company performs annual impairment tests on goodwill and intangible assets with indefinite lives in the fourth quarter of each fiscal year or when events occur or circumstances change that would, more likely than not, reduce the fair value of a reporting unit or an intangible asset with an indefinite life below its carrying value. For purposes of testing goodwill for impairment, the Company allocates goodwill across its reporting units, which are considered the Company's operating segments. For both goodwill and indefinite-lived intangible assets, which primarily consist of acquired trade names and trademarks, the Company may first assess qualitative factors to determine whether it is more likely than not that the fair value of a reporting unit or an intangible asset with an indefinite life is less than its carrying amount. If, after assessing the totality of events and circumstances, the Company determines it is more likely than not that the fair value of a reporting unit or indefinite-lived intangible asset is greater than its carrying amount, an impairment test is unnecessary. If an impairment test is necessary, the Company will estimate the fair value of the related reporting unit or indefinite-lived intangible asset. If the carrying value of a reporting unit or indefinite-lived intangible asset exceeds its fair value, the goodwill of that reporting unit or indefinite-lived intangible asset is determined to be impaired and the Company will record an impairment charge equal to the excess of the carrying value over the related fair value. There were no accumulated impairment losses as of May 31, 2023 and 2022. Additionally, the impact to Goodwill as a result of acquisitions and divestitures during fiscal 2023 and 2022, was not material. OPERATING LEASES The Company primarily leases retail store space, certain distribution and warehouse facilities, of fice space, equipment and other non-real estate assets. The Company determines if an arrangement is a lease at inception and begins recording lease activity at the commencement date, which is generally the date in which the Company takes possession of or controls the physical use of the asset. Lease components are not separated from non-lease components for real estate leases within the Company's lease portfolio. Right-of-use ("ROU") assets and lease liabilities are recognized based on the present value of lease payments over the lease term with lease expense recognized on a straight-line basis. The Company's incremental borrowing rate is used to determine the present value of future lease payments unless the implicit rate is readily determinable. Lease agreements may contain rent escalation clauses, renewal or termination options, rent holidays or certain landlord incentives, including tenant improvement allowances. ROU assets include amounts for scheduled rent increases and are reduced by the amount of lease incentives. The lease term includes the non-cancelable period of the lease and options to extend or terminate the lease when it is reasonably certain the Company will exercise those options. The Company does not record leases with an initial term of 12 months or less on the Consolidated Balance Sheets and recognizes related lease payments in the Consolidated Statements of Income on a straight-line basis over the lease term. Certain lease agreements include variable lease payments, which are based on a percent of retail sales over specified levels or adjust periodically for inflation as a result of changes in a published index, primarily the Consumer Price Index, and are expensed as incurred. FAIR VALUE MEASUREMENTS The Company measures certain financial assets and liabilities at fair value on a recurring basis, including derivatives, equity securities and available-for-sale debt securities. Fair value is the price the Company would receive to sell an asset or pay to transfer a liability in an orderly transaction with a market participant at the measurement date. The Company uses a three-level hierarchy that prioritizes fair value measurements based on the types of inputs used, as follows: NIKE, INC. 64•Level 1: Quoted prices in active markets for identical assets or liabilities. •Level 2: Inputs other than quoted prices that are observable for the asset or liability , either directly or indirectly; these include quoted prices for similar assets or liabilities in active markets and quoted prices for identical or similar assets or liabilities in markets that are not active. •Level 3: Unobservable inputs with little or no market data available, which require the reporting entity to develop its own assumptions. The Company's assessment of the significance of a particular input to the fair value measurement in its entirety requires judgment and considers factors specific to the asset or liability . Financial assets and liabilities are classified in their entirety based on the most conservative level of input that is significant to the fair value measurement. Pricing vendors are utilized for a majority of Level 1 and Level 2 investments. These vendors either provide a quoted market price in an active market or use observable inputs without applying significant adjustments in their pricing. Observable inputs include broker quotes, interest rates and yield curves observable at commonly quoted intervals, volatilities and credit risks. The fair value of derivative contracts is determined using observable market inputs such as the daily market foreign currency rates, forward pricing curves, currency volatilities, currency correlations and interest rates and considers nonperformance risk of the Company and its counterparties. The Company's fair value measurement process includes comparing fair values to another independent pricing vendor to ensure appropriate fair values are recorded. Refer to Note 4 — Fair Value Measurements for additional information. FOREIGN CURRENCY TRANSLATION AND FOREIGN CURRENCY TRANSACTIONS Adjustments resulting from translating foreign functional currency financial statements into U.S. Dollars are included in the foreign currency translation adjustment, a component of Accumulated other comprehensive income (loss). The Company's global subsidiaries have various monetary assets and liabilities, primarily receivables and payables, which are denominated in currencies other than their functional currency. These balance sheet items are subject to remeasurement, the impact of which is recorded in Other (income) expense, net, within the Consolidated Statements of Income. ACCOUNTING FOR DERIVATIVES AND HEDGING ACTIVITIES The Company uses derivative financial instruments to reduce its exposure to changes in foreign currency exchange rates and interest rates. All derivatives are recorded at fair value on the Consolidated Balance Sheets and changes in the fair value of derivative financial instruments are either recognized in Accumulated other comprehensive income (loss), Long-term debt or Net income depending on the nature of the underlying exposure, whether the derivative is formally designated as a hedge and, if designated, the extent to which the hedge is effective. The Company classifies the cash flows at settlement from derivatives in the same category as the cash flows from the related hedged items. For undesignated hedges and designated cash flow hedges, this is primarily within the Cash provided by operations component of the Consolidated Statements of Cash Flows. For designated net investment hedges, this is within the Cash provided by investing activities component of the Consolidated Statements of Cash Flows. For the Company's fair value hedges, which are interest rate swaps used to mitigate the change in fair value of its fixed-rate debt attributable to changes in interest rates, the related cash flows from periodic interest payments are reflected within the Cash provided by operations component of the Consolidated Statements of Cash Flows. Refer to Note 12 — Risk Management and Derivatives for additional information on the Company's risk management program and derivatives. STOCK-BASED COMPENSATION The Company accounts for stock-based compensation by estimating the fair value, net of estimated forfeitures, of equity awards and recognizing the related expense as Cost of sales or Operating overhead expense, as applicable, in the Consolidated Statements of Income on a straight-line basis over the vesting period. Substantially all awards vest ratably over four years of continued employment, with stock options expiring 10 years from the date of grant. Performance-based restricted stock units vest based on the Company's achievement of certain performance criteria throughout the three-year performance period and continued employment through the vesting date. The fair value of options, stock appreciation rights and employees' purchase rights under the employee stock purchase plans ("ESPPs") is determined using the Black-Scholes option pricing model. The fair value of restricted stock and time-vesting restricted stock units is established by the market price on the date of grant. The fair value of performance-based restricted stock units is estimated as of the grant date using a Monte Carlo simulation. Refer to Note 9 — Common Stock and Stock-Based Compensation for additional information on the Company's stock-based compensation programs. 2023 FORM 10-K 65 INCOME TAXES The Company accounts for income taxes using the asset and liability method. This approach requires the recognition of deferred tax assets and liabilities for the expected future tax consequences of temporary dif ferences between the carrying amounts and the tax basis of assets and liabilities. The Company records a valuation allowance to reduce deferred tax assets to the amount management believes is more likely than not to be realized. Realization of deferred tax assets is dependent on future taxable earnings and is therefore uncertain. At least quarterly, the Company assesses taxable income in prior carryback periods, the scheduled reversal of deferred tax liabilities, projected future taxable income and available tax planning strategies. The Company uses forecasts of taxable income and considers foreign tax credit utilization in making this assessment of realization, which are inherently uncertain and can result in significant variation between estimated and actual results. To the extent the Company believes that recovery is not likely, a valuation allowance is established against the net deferred tax asset, which increases the Company's income tax expense in the period when such determination is made. The Company recognizes a tax benefit from uncertain tax positions in the financial statements only when it is more likely than not the position will be sustained upon examination by relevant tax authorities. The Company recognizes interest and penalties related to income tax matters in Income tax expense. Refer to Note 7 — Income Taxes for further discussion. EARNINGS PER SHARE Basic earnings per common share is calculated by dividing Net income by the weighted average number of common shares outstanding during the year. Diluted earnings per common share is calculated by adjusting weighted average outstanding shares, assuming conversion of all potentially dilutive stock options and awards. Refer to Note 10 — Earnings Per Share for further discussion. MANAGEMENT ESTIMATES The preparation of financial statements in conformity with generally accepted accounting principles requires management to make estimates, including estimates relating to assumptions that af fect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from these estimates. Additionally, the macroeconomic environment could remain volatile as the risk exists that worsening macroeconomic conditions could have a material, adverse impact on future revenue growth as well as overall profitability . RECENTLY ISSUED ACCOUNTING STANDARDS In September 2022, the Financial Accounting Standards Board (the "FASB") issued Accounting Standards Update ("ASU") ASU 2022-04, Liabilities — Supplier Finance Programs (Subtopic 405-50): Disclosure of Supplier Finance Program Obligations, which enhances transparency surrounding the use of supplier finance programs. The new guidance requires qualitative and quantitative disclosure sufficient to enable users of the financial statements to understand the nature, activity during the period, changes from period to period and potential magnitude of such programs. The amendments are effective for fiscal years beginning after December 15, 2022, including interim periods within those fiscal periods, except for the amendment on rollforward information, which is effective for fiscal years beginning after December 15, 2023. The Company will adopt the required guidance in the first quarter of fiscal 2024 and is currently evaluating the ASU to determine its impact on the Company's disclosures. NIKE, INC. 66NOTE 2 — PROPERTY, PLANT AND EQUIPMENT Property, plant and equipment, net included the following: MAY 31, (Dollars in millions) 2023 2022 Land and improvements $ 326 $ 330 Buildings 3,293 3,170 Machinery and equipment 3,083 2,870 Internal-use software 1,612 1,616 Leasehold improvements 1,876 1,712 Construction in process 525 399 Total property, plant and equipment, gross 10,715 10,097 Less accumulated depreciation 5,634 5,306 TOTAL PROPERTY, PLANT AND EQUIPMENT, NET $ 5,081 $ 4,791 Capitalized interest was not material for the fiscal years ended May 31, 2023, 2022 and 2021. NOTE 3 — ACCRUED LIABILITIES Accrued liabilities included the following: MAY 31, (Dollars in millions) 2023 2022 Compensation and benefits, excluding taxes $ 1,737 $ 1,297 Sales-related reserves 994 1,015 Endorsement compensation 552 496 Dividends payable 529 485 Allowance for expected loss on sale(1) — 397 Other 1,911 2,530 Total Accrued Liabilities $ 5,723 $ 6,220 (1) Refer to Note 18 — Acquisitions and Divestitures for additional information. 2023 FORM 10-K 67 NOTE 4 — FAIR VALUE MEASUREMENTS The following tables present information about the Company's financial assets measured at fair value on a recurring basis as of May 31, 2023 and 2022, and indicate the level in the fair value hierarchy in which the Company classifies the fair value measurement. Refer to Note 1 — Summary of Significant Accounting Policies for additional detail regarding the Company's fair value measurement methodology. MAY 31, 2023 (Dollars in millions) ASSETS AT FAIR VALUE CASH AND EQUIVALENTS SHORT-TERM INVESTMENTS Cash $ 1,767 $ 1,767 $ — Level 1: U.S. Treasury securities 2,655 — 2,655 Level 2: Commercial paper and bonds 543 15 528 Money market funds 5,157 5,157 — Time deposits 507 502 5 U.S. Agency securities 46 — 46 Total Level 2 6,253 5,674 579 TOTAL $ 10,675 $ 7,441 $ 3,234 MAY 31, 2022 (Dollars in millions) ASSETS AT FAIR VALUE CASH AND EQUIVALENTS SHORT-TERM INVESTMENTS Cash $ 839 $ 839 $ — Level 1: U.S. Treasury securities 3,801 8 3,793 Level 2: Commercial paper and bonds 660 37 623 Money market funds 6,458 6,458 — Time deposits 1,237 1,232 5 U.S. Agency securities 2 — 2 Total Level 2 8,357 7,727 630 TOTAL $ 12,997 $ 8,574 $ 4,423 As of May 31, 2023, the Company held $2,563 million of available-for-sale debt securities with maturity dates within one year and $671 million with maturity dates over one year and less than five years in Short-term investments on the Consolidated Balance Sheets. The fair value of the Company's available-for-sale debt securities approximates their amortized cost. Included in Interest expense (income), net was interest income related to the Company's investment portfolio of $297 million, $94 million and $34 million for the years ended May 31, 2023, 2022 and 2021, respectively. The Company records the assets and liabilities of its derivative financial instruments on a gross basis on the Consolidated Balance Sheets. The Company's derivative financial instruments are subject to master netting arrangements that allow for the offset of assets and liabilities in the event of default or early termination of the contract. Any amounts of cash collateral received related to these instruments associated with the Company's credit-related contingent features are recorded in Cash and equivalents and Accrued liabilities, the latter of which would further offset against the Company's derivative asset balance. Any amounts of cash collateral posted related to these instruments associated with the Company's credit-related contingent features are recorded in Prepaid expenses and other current assets, which would further offset against the Company's derivative liability balance. Cash collateral received or posted related to the Company's credit-related contingent features is presented in the Cash provided by operations component of the Consolidated Statements of Cash Flows. The Company does not recognize amounts of non-cash collateral received, such as securities, on the Consolidated Balance Sheets. For further information related to credit risk, refer to Note 12 — Risk Management and Derivatives. NIKE, INC. 68The following tables present information about the Company's derivative assets and liabilities measured at fair value on a recurring basis and indicate the level in the fair value hierarchy in which the Company classifies the fair value measurement: MAY 31, 2023 DERIVATIVE ASSETS DERIVATIVE LIABILITIES (Dollars in millions)ASSETS AT FAIR VALUEOTHER CURRENT ASSETSOTHER LONG-TERM ASSETSLIABILITIES AT FAIR VALUEACCRUED LIABILITIESOTHER LONG-TERM LIABILITIES Level 2: Foreign exchange forwards and options(1)$ 557 $ 493 $ 64 $ 180 $ 128 $ 52 (1) If the foreign exchange derivative instruments had been netted on the Consolidated Balance Sheets, the asset and liability positions each would have been reduced by $178 million as of May 31, 2023. As of that date, the Company received $36 million of cash collateral from various counterparties related to foreign exchange derivative instruments. No amount of collateral was posted on the derivative liability balance as of May 31, 2023. MAY 31, 2022 DERIVATIVE ASSETS DERIVATIVE LIABILITIES (Dollars in millions)ASSETS AT FAIR VALUEOTHER CURRENT ASSETSOTHER LONG-TERM ASSETSLIABILITIES AT FAIR VALUEACCRUED LIABILITIESOTHER LONG-TERM LIABILITIES Level 2: Foreign exchange forwards and options and embedded derivatives(1)$ 880 $ 674 $ 206 $ 77 $ 66 $ 11 (1) If the foreign exchange derivative instruments had been netted on the Consolidated Balance Sheets, the asset and liability positions each would have been reduced by $76 million as of May 31, 2022. As of that date, the Company had received $486 million of cash collateral from various counterparties related to foreign exchange derivative instruments. No amount of collateral was posted on the Company's derivative liability balance as of May 31, 2022. For additional information related to the Company's derivative financial instruments, refer to Note 12 — Risk Management and Derivatives. For fair value information regarding Notes payable and Long-term debt, refer to Note 5 — Short-Term Borrowings and Credit Lines and Note 6 — Long-Term Debt, respectively. The carrying amounts of other current financial assets and other current financial liabilities approximate fair value. NON-RECURRING FAIR VALUE MEASUREMENTS As further discussed in Note 18 — Acquisitions and Divestitures, the Company met the criteria to recognize the related assets and liabilities of its Argentina, Chile and Uruguay entities as held-for-sale as of May 31, 2022. This required the Company to remeasure the disposal groups at fair value, less costs to sell, which is considered a Level 3 fair value measurement and was based on each transaction's estimated consideration. All other assets or liabilities required to be measured at fair value on a non-recurring basis as of May 31, 2023 and 2022 were immaterial. 2023 FORM 10-K 69 NOTE 5 — SHORT-TERM BORROWINGS AND CREDIT LINES The carrying amounts reflected in the Consolidated Balance Sheets for Notes payable approximate fair value. On March 11, 2022, the Company entered into a five-year committed credit facility agreement with a syndicate of banks which provides for up to $2 billion of borrowings, with the option to increase borrowings up to $3 billion in total with lender approval. The facility matures on March 11, 2027, with options to extend the maturity date up to an additional two years. This facility replaces the prior $2 billion five-year credit facility agreement entered into on August 16, 2019, which would have matured on August 16, 2024. Based on the Company's current long-term senior unsecured debt ratings of AA- and A1 from Standard and Poor's Corporation and Moody's Investor Services, respectively, the interest rate charged on any outstanding borrowings would be the prevailing Term SOFR for the applicable interest period plus 0.60%. The facility fee is 0.04% of the total undrawn commitment. On March 10, 2023, the Company entered into a 364-day committed credit facility agreement with a syndicate of banks, which provides for up to $1 billion of borrowings, with an option to increase borrowings up to $1.5 billion in total with lender approval. The facility matures on March 8, 2024, with an option to extend the maturity date an additional 364 days. This facility replaces the prior $1 billion 364-day credit facility agreement entered into on March 11, 2022, which matured on March 10, 2023. Based on the Company's current long-term senior unsecured debt ratings of AA- and A1 from Standard and Poor's Corporation and Moody's Investor Services, respectively, the interest rate charged on any outstanding borrowings would be the prevailing Term Secured Overnight Financing Rate ("Term SOFR") for the applicable interest period plus 0.60%. The facility fee is 0.02% of the total undrawn commitment. As of and for the periods ended May 31, 2023 and 2022, no amounts were outstanding under any of the Company's committed credit facilities. NIKE, INC. 70NOTE 6 — LONG-TERM DEBT Long-term debt, net of unamortized premiums, discounts and debt issuance costs, comprises the following: BOOK VALUE OUTSTANDING AS OF MAY 31, Scheduled Maturity (Dollars in millions) ORIGINAL PRINCIPAL INTEREST RATE INTEREST PAYMENTS 2023 2022 Corporate Term Debt:(1)(2) May 1, 2023 $ 500 2.25 % Semi-Annually $ — $ 500 March 27, 2025 1,000 2.40 % Semi-Annually 998 996 November 1, 2026 1,000 2.38 % Semi-Annually 997 997 March 27, 2027 1,000 2.75 % Semi-Annually 997 996 March 27, 2030 1,500 2.85 % Semi-Annually 1,492 1,491 March 27, 2040 1,000 3.25 % Semi-Annually 987 986 May 1, 2043 500 3.63 % Semi-Annually 496 496 November 1, 2045 1,000 3.88 % Semi-Annually 986 985 November 1, 2046 500 3.38 % Semi-Annually 492 492 March 27, 2050 1,500 3.38 % Semi-Annually 1,482 1,481 Total 8,927 9,420 Less Current Portion of Long-Term Debt — 500 TOTAL LONG-TERM DEBT $ 8,927 $ 8,920 (1) These senior unsecured obligations rank equally with the Company's other unsecured and unsubordinated indebtedness. (2) The bonds are redeemable at the Company's option at a price equal to the greater of (i) 100% of the aggregate principal amount of the notes to be redeemed or (ii) the sum of the present values of the remaining scheduled payments, plus in each case, accrued and unpaid interest. However, the bonds also feature a par call provision, which allows for the bonds to be redeemed at a price equal to 100% of the aggregate principal amount of the notes being redeemed, plus accrued and unpaid interest on or after the P ar Call Date, as defined in the respective notes. The scheduled maturity of Long-term debt in each of the years ending May 31, 2024 through 2028, are $0 million, $1,000 million, $0 million, $2,000 million and $0 million, respectively, at face value. The Company's Long-term debt is recorded at adjusted cost, net of unamortized premiums, discounts and debt issuance costs. The fair value of long-term debt is estimated based upon quoted prices for similar instruments or quoted prices for identical instruments in inactive markets (Level 2). The fair value of the Company's Long-term debt, including the current portion, was approximately $7,889 million and $8,933 million as of May 31, 2023 and 2022, respectively. 2023 FORM 10-K 71 NOTE 7 — INCOME TAXES Income before income taxes is as follows: YEAR ENDED MAY 31, (Dollars in millions) 2023 2022 2021 Income before income taxes: United States $ 4,663 $ 6,020 $ 5,723 Foreign 1,538 631 938 TOTAL INCOME BEFORE INCOME TAXES $ 6,201 $ 6,651 $ 6,661 The provision for income taxes is as follows: YEAR ENDED MAY 31, (Dollars in millions) 2023 2022 2021 Current: United States Federal $ 430 $ 231 $ 328 State 184 98 134 Foreign 634 926 857 Total Current 1,248 1,255 1,319 Deferred: United States Federal (162) (522) (371) State (25) (16) (34) Foreign 70 (112) 20 Total Deferred (117) (650) (385) TOTAL INCOME TAX EXPENSE $ 1,131 $ 605 $ 934 A reconciliation from the U.S. statutory federal income tax rate to the effective income tax rate is as follows: YEAR ENDED MAY 31, 2023 2022 2021 Federal income tax rate 21.0 % 21.0 % 21.0 % State taxes, net of federal benefit 1.5 % 1.4 % 1.3 % Foreign earnings 1.7 % -1.8 % 0.2 % Subpart F deferred tax benefit 0.0 % -4.7 % 0.0 % Foreign-derived intangible income benefit -6.1 % -4.1 % -3.7 % Excess tax benefits from stock-based compensation -1.1 % -4.9 % -4.5 % Income tax audits and contingency reserves 1.0 % 1.5 % 1.5 % U.S. research and development tax credit -1.2 % -1.0 % -0.9 % Other, net 1.4 % 1.7 % -0.9 % EFFECTIVE INCOME TAX RATE 18.2 % 9.1 % 14.0 % On December 22, 2017, the U.S. enacted the Tax Cuts and Jobs Act (the "Tax Act"), which significantly changed U.S. tax law and included a provision to tax global intangible low-taxed income ("GILTI") of foreign subsidiaries. The Company recognizes taxes due under the GILTI provision as a current period expense. The effective tax rate for the fiscal year ended May 31, 2023 was higher than the effective tax rate for the fiscal year ended May 31, 2022. The increase was primarily due to decreased benefits from stock-based compensation and the prior year recognition of a non-cash, one-time benefit related to the onshoring of the Company's non-U.S . intangible property. During the fourth quarter of fiscal 2022, the Company onshored certain non-U.S . intangible property ownership rights and implemented changes in the Company's legal entity structure. The tax restructuring increases the possibility that foreign earnings in future periods will be subject to tax in the U.S. due to Subpart F of the Internal Revenue Code. The Company recognized a deferred tax asset and corresponding non-cash deferred income tax benefit of 4.7%, to establish the deferred tax deduction that is expected to reduce taxable income in future periods. NIKE, INC. 72The effective tax rate for the fiscal year ended May 31, 2022 was lower than the effective tax rate for the fiscal year ended May 31, 2021. The decrease was primarily due to a shift in the Company's earnings mix and recognition of a non-cash, one-time benefit related to the onshoring of the Company's non-U.S. intangible property. Deferred tax assets and liabilities comprise the following as of: MAY 31, (Dollars in millions) 2023 2022 Deferred tax assets: Inventories(1)$ 79 $ 136 Sales return reserves(1) 89 109 Deferred compensation(1) 321 313 Stock-based compensation 261 195 Reserves and accrued liabilities(1) 144 145 Operating lease liabilities 511 508 Intangibles 255 275 Capitalized research and development expenditures 548 353 Net operating loss carry-forwards 15 8 Subpart F deferred tax 374 313 Foreign tax credit carry-forward — 103 Other(1) 183 148 Total deferred tax assets 2,780 2,606 Valuation allowance (22) (19) Total deferred tax assets after valuation allowance 2,758 2,587 Deferred tax liabilities: Foreign withholding tax on undistributed earnings of foreign subsidiaries (186) (146) Property, plant and equipment(1) (276) (247) Right-of-use assets (441) (437) Other(1) (56) (92) Total deferred tax liabilities (959) (922) NET DEFERRED TAX ASSET (2)$ 1,799 $ 1,665 (1) The above amounts exclude deferred taxes held-for-sale as of May 31, 2022. See Note 18 — Acquisitions and Divestitures for additional information. (2) Of the total $1,799 million net deferred tax asset for the period ended May 31, 2023, $2,026 million was included within Deferred income taxes and other assets and $(227) million was included within Deferred income taxes and other liabilities on the Consolidated Balance Sheets. Of the total $1,665 million net deferred tax asset for the period ended May 31, 2022, $1,891 million was included within Deferred income taxes and other assets and $(226) million was included within Deferred income taxes and other liabilities on the Consolidated Balance Sheets. The following is a reconciliation of the changes in the gross balance of unrecognized tax benefits as of: MAY 31, (Dollars in millions) 2023 2022 2021 Unrecognized tax benefits, beginning of the period $ 848 $ 896 $ 771 Gross increases related to prior period tax positions 95 71 77 Gross decreases related to prior period tax positions (17) (145) (22) Gross increases related to current period tax positions 50 62 59 Settlements (18) (17) (5) Lapse of statute of limitations (7) (10) (6) Changes due to currency translation (15) (9) 22 UNRECOGNIZED TAX BENEFITS, END OF THE PERIOD $ 936 $ 848 $ 896 As of May 31, 2023, total gross unrecognized tax benefits, excluding related interest and penalties, were $936 million, of which $651 million would affect the Company's effective tax rate if recognized in future periods. The majority of the total gross unrecognized tax benefits are long-term in nature and included within Deferred income taxes and other liabilities on the Consolidated Balance Sheets. 2023 FORM 10-K 73 The Company recognizes interest and penalties related to income tax matters in Income tax expense. The liability for payment of interest and penalties increased by $20 million during the fiscal year ended May 31, 2023, increased by $45 million during the fiscal year ended May 31, 2022, and increased by $45 million during the fiscal year ended May 31, 2021. As of May 31, 2023 and 2022, accrued interest and penalties related to uncertain tax positions were $268 million and $248 million, respectively (excluding federal benefit) and were included within Deferred income taxes and other liabilities on the Consolidated Balance Sheets. As of May 31, 2023 and 2022, long-term income taxes payable were $373 million and $535 million, respectively, and were included within Deferred income taxes and other liabilities on the Consolidated Balance Sheets. The Company is subject to taxation in the U.S., as well as various state and foreign jurisdictions. The Company is currently under audit by the U.S. IRS for fiscal years 2017 through 2019. The Company has closed all U.S. federal income tax matters through fiscal 2016, with the exception of certain transfer pricing adjustments. Tax years after 2011 remain open in certain major foreign jurisdictions. Although the timing of resolution of audits is not certain, the Company evaluates all domestic and foreign audit issues in the aggregate, along with the expiration of applicable statutes of limitations, and estimates that it is reasonably possible the total gross unrecognized tax benefits could decrease by up to $50 million within the next 12 months. In January 2019, the European Commission opened a formal investigation to examine whether the Netherlands has breached State Aid rules when granting certain tax rulings to the Company. The Company believes the investigation is without merit. If this matter is adversely resolved, the Netherlands may be required to assess additional amounts with respect to prior periods, and the Company's income taxes related to prior periods in the Netherlands could increase. A portion of the Company's foreign operations benefit from a tax holiday, which is set to expire in 2031. This tax holiday may be extended when certain conditions are met or may be terminated early if certain conditions are not met. The tax benefit attributable to this tax holiday, before taking into consideration other U.S. indirect tax provisions, was $263 million, $221 million and $238 million for the fiscal years ended May 31, 2023, 2022 and 2021, respectively. The benefit of the tax holiday on diluted earnings per common share was $0.17, $0.14 and $0.15 for the fiscal years ended May 31, 2023, 2022 and 2021, respectively. Deferred tax assets as of May 31, 2023 and 2022, were reduced by a valuation allowance. For the fiscal year ended May 31, 2023, a valuation allowance was provided for U.S. capital loss carryforwards and on tax benefits generated by certain entities with operating losses. For the fiscal year ended May 31, 2022, a valuation allowance was provided for U.S. capital loss carryforwards and on tax benefits generated by certain entities with operating losses. There was a $3 million net increase in the valuation allowance for the fiscal year ended May 31, 2023, compared to a $7 million net increase for the fiscal year ended May 31, 2022, and $14 million net decrease for the fiscal year ended May 31, 2021. The Company has available domestic and foreign loss carry-forwards of $61 million as of May 31, 2023. If not utilized, $33 million of losses will expire in the periods between fiscal 2028 and 2043. NOTE 8 — REDEEMABLE PREFERRED STOCK Sojitz America is the sole owner of the Company's authorized redeemable preferred stock, $1 par value, which is redeemable at the option of Sojitz America or the Company at par value aggregating $0.3 million. A cumulative dividend of $0.10 per share is payable annually on May 31, and no dividends may be declared or paid on the common stock of the Company unless dividends on the redeemable preferred stock have been declared and paid in full. There have been no changes in the redeemable preferred stock in the fiscal years ended May 31, 2023, 2022 and 2021. As the holder of the redeemable preferred stock, Sojitz America does not have general voting rights but does have the right to vote as a separate class on the sale of all or substantially all of the assets of the Company and its subsidiaries; on merger, consolidation, liquidation or dissolution of the Company; or on the sale or assignment of the NIKE trademark for athletic footwear sold in the United States. The redeemable preferred stock has been fully issued to Sojitz America and is not blank check preferred stock. The Company's articles of incorporation do not permit the issuance of additional preferred stock. NOTE 9 — COMMON STOCK AND STOCK-BASED COMPENSATION COMMON STOCK The authorized number of shares of Class A Common Stock, no par value, and Class B Common Stock, no par value, are 400 million and 2,400 million, respectively. Each share of Class A Common Stock is convertible into one share of Class B Common Stock. Voting rights of Class B Common Stock are limited in certain circumstances with respect to the election of directors. There are no differences in the dividend and liquidation preferences or participation rights of the holders of Class A and Class B Common Stock. From time to time, the Company's Board of Directors authorizes share repurchase programs for the repurchase of Class B Common Stock. The value of repurchased shares is deducted from Total shareholders' equity through allocation to Capital in excess of stated value and Retained earnings. NIKE, INC. 74STOCK-BASED COMPENSATION The NIKE, Inc. Stock Incentive Plan (the "Stock Incentive Plan") provides for the issuance of up to 798 million previously unissued shares of Class B Common Stock in connection with equity awards granted under the Stock Incentive Plan. The Stock Incentive Plan authorizes the grant of non-statutory stock options, incentive stock options, stock appreciation rights, and stock awards, including restricted stock and restricted stock units. Restricted stock units include both time-vesting restricted stock units ("RSUs") as well as performance-based restricted stock units ("PSUs"). A committee of the Board of Directors administers the Stock Incentive Plan and has the authority to determine the employees to whom awards will be made, the amount of the awards and the other terms and conditions of the awards. The Company generally grants stock options, restricted stock and restricted stock units on an annual basis. The exercise price for stock options and stock appreciation rights may not be less than the fair market value of the underlying shares on the date of grant. Substantially all awards under the Stock Incentive Plan vest ratably over 4 years of continued employment, with stock options expiring 10 years from the date of grant. The following table summarizes the Company's total stock-based compensation expense recognized in Cost of sales or Operating overhead expense, as applicable: YEAR ENDED MAY 31, (Dollars in millions) 2023 2022 2021 Stock options(1)$ 311 $ 297 $ 323 ESPPs 72 60 63 Restricted stock and restricted stock units(1)(2) 372 281 225 TOTAL STOCK-BASED COMPENSATION EXPENSE $ 755 $ 638 $ 611 (1) Expense for stock options includes the expense associated with stock appreciation rights. Accelerated stock option expense is primarily recorded for employees meeting certain retirement eligibility requirements and was $64 million, $57 million and $67 million for the fiscal years ended May 31, 2023, 2022 and 2021, respectively. During fiscal 2021, an immaterial amount of accelerated stock option and restricted stock unit expense was also recorded for certain employees impacted by the Company's organizational realignment. For more information, see Note 19 — Restructuring. (2) For the fiscal years ended May 31, 2023 and 2022, expense for restricted stock units includes an immaterial amount of expense for PSUs. The income tax benefit related to stock-based compensation expense was $71 million, $327 million and $297 million for the fiscal years ended May 31, 2023, 2022 and 2021, respectively, and reported within Income tax expense. STOCK OPTIONS The weighted average fair value per share of stock options granted during the years ended May 31, 2023, 2022 and 2021, computed as of the grant date using the Black-Scholes pricing model, was $31.31, $37.53 and $26.75, respectively. The weighted average assumptions used to estimate these fair values were as follows: YEAR ENDED MAY 31, 2023 2022 2021 Dividend yield 0.9 % 0.8 % 0.9 % Expected volatility 27.1 % 24.9 % 27.3 % Weighted average expected life (in years) 5.8 5.8 6.0 Risk-free interest rate 3.3 % 0.9 % 0.4 % Expected volatilities are based on an analysis of the historical volatility of the Company's common stock, the implied volatility in market traded options on the Company's common stock with a term greater than one year, as well as other factors. The weighted average expected life of options is based on an analysis of historical and expected future exercise patterns. The interest rate is based on the U.S. Treasury (constant maturity) risk-free rate in effect at the date of grant for periods corresponding with the expected term of the options. 2023 FORM 10-K 75 The following summarizes the stock option transactions under the plan discussed above: SHARES(1)WEIGHTED AVERAGE OPTION PRICE (In millions) Options outstanding as of May 31, 2022 68.0 $ 88.66 Exercised (7.5) 57.11 Forfeited (1.5) 122.93 Granted 12.0 107.44 Options outstanding as of May 31, 2023 71.0 $ 94.40 (1) Includes stock appreciation rights transactions. Options exercisable as of May 31, 2023 were 44.7 million and had a weighted average option price of $79.95 per share. The aggregate intrinsic value for options outstanding and exercisable as of May 31, 2023 was $1,380 million and $1,307 million, respectively. The total intrinsic value of the options exercised during the years ended May 31, 2023, 2022 and 2021 was $438 million, $1,742 million and $1,571 million, respectively. The intrinsic value is the amount by which the market value of the underlying stock exceeds the exercise price of the options. The weighted average contractual life remaining for options outstanding and options exercisable as of May 31, 2023 was 5.9 years and 4.5 years, respectively. As of May 31, 2023, the Company had $425 million of unrecognized compensation costs from stock options, net of estimated forfeitures, to be recognized in Cost of sales or Operating overhead expense, as applicable, over a weighted average remaining perio d of 2.5 years. EMPLOYEE STOCK PURCHASE PLANS In addition to the Stock Incentive Plan, the Company gives employees the right to purchase shares at a discount from the market price under ESPPs. Subject to the annual statutory limit, employees are eligible to participate through payroll deductions of up to 10% of their compensation. At the end of each six-month offering period, shares are purchased by the participants at 85% of the lower of the fair market value at the beginning or the end of the of fering period. Employees purchased 3.0 million, 2.0 million and 2.5 million shares during each of the fiscal years ended May 31, 2023, 2022 and 2021, respectively. RESTRICTED STOCK AND RESTRICTED STOCK UNITS Recipients of restricted stock are entitled to cash dividends and to vote their respective shares throughout the period of restriction. Recipients of restricted stock units, which includes RS Us and PSUs, are entitled to dividend equivalent cash payments upon vesting. The number of shares of restricted stock and restricted stock units vested includes shares of common stock withheld by the Company on behalf of employees to satisfy the minimum statutory tax withholding requirements. The following summarizes the restricted stock and restricted stock units transactions under the plan discussed above: SHARES(1)WEIGHTED AVERAGE GRANT DATE FAIR VALUE (In millions) Nonvested as of May 31, 2022 6.7 $ 130.88 Vested (2.2) 114.85 Forfeited (0.7) 131.10 Granted 4.5 115.56 Nonvested as of May 31, 2023 8.3 $ 126.97 (1) Includes an immaterial amount of PSU transactions The weighted average fair value per share of restricted stock and restricted stock units granted for the fiscal years ended May 31, 2023, 2022 and 2021, computed as of the grant date, was $115.56, $168.04 and $113.84, respectively. During the fiscal years ended May 31, 2023, 2022 and 2021, the aggregate fair value of vested restricted stock and restricted stock units was $250 million, $354 million and $310 million, respectively, computed as of the date of vesting. As of May 31, 2023, the Company had $649 million of unrecognized compensation costs from restricted stock and restricted stock units, net of estimated forfeitures, to be recognized in Cost of sales or Operating overhead expense, as applicable, over a weighted average remaining period of 2.3 years. NIKE, INC. 76NOTE 10 — EARNINGS PER SHARE The following is a reconciliation from basic earnings per common share to diluted earnings per common share. The computations of diluted earnings per common share excluded restricted stock, restricted stock units and options, including shares under ESPPs, to purchase an estimated additional 31.7 million, 9.4 million and 11.3 million shares of common stock outstanding for the fiscal years ended May 31, 2023, 2022 and 2021, respectively, because the awards were assumed to be anti-dilutive. YEAR ENDED MAY 31, (In millions, except per share data) 2023 2022 2021 Net income available to common stockholders $ 5,070 $ 6,046 $ 5,727 Determination of shares: Weighted average common shares outstanding 1,551.6 1,578.8 1,573.0 Assumed conversion of dilutive stock options and awards 18.2 32.0 36.4 DILUTED WEIGHTED AVERAGE COMMON SHARES OUTSTANDING 1,569.8 1,610.8 1,609.4 Earnings per common share: Basic $ 3.27 $ 3.83 $ 3.64 Diluted $ 3.23 $ 3.75 $ 3.56 NOTE 11 — BENEFIT PLANS The Company has a qualified 401(k) Savings and Profit Sharing Plan, in which all U.S. employees are able to participate. The Company matches a portion of employee contributions to the savings plan. Company contributions to the savings plan were $136 million, $126 million and $110 million and included in Cost of sales or Operating overhead expense, as applicable, for the fiscal years ended May 31, 2023, 2022 and 2021, respectively. The Company also has a Long-Term Incentive Plan ("LTIP") adopted by the Board of Directors and approved by shareholders in September 1997, which has been amended from time to time. The Company recognized an immaterial amount of Operating overhead expense related to cash awards under the LTIP during the years ended May 31, 2023, 2022 and 2021. During the fiscal years ended May 31, 2023 and 2022, under the Stock Incentive Plan, the Company granted PSUs which replaced cash-based long-term incentive awards historically granted under the Company's LTIP. Refer to Note 9 — Common Stock and Stock-Based Compensation for further information related to PSUs. The Company allows certain highly compensated employees and non-employee directors of the Company to defer compensation under a nonqualified deferred compensation plan. A rabbi trust was established to fund the Company's nonqualified deferred compensation plan obligation. The assets in the rabbi trust of approximately $875 million and $876 million as of May 31, 2023 and 2022, respectively, primarily consist of company owned life insurance policies recorded at their cash surrender value and are classified in Deferred income taxes and other assets on the Consolidated B alance Sheets. Deferred compensation plan liabilities were $897 million and $890 million as of May 31, 2023 and 2022, respectively, and primarily classified in Deferred income taxes and other liabilities on the Consolidated Balance Sheets. The Company has pension plans in various countries worldwide. The pension plans are only available to local employees and are generally government mandated. The liability related to the unfunded pension liabilities of the plans was $29 million and $30 million as of May 31, 2023 and 2022, respectively, and primarily classified as non-current in Deferred income taxes and other liabilities on the Consolidated Balance Sheets. NOTE 12 — RISK MANAGEMENT AND DERIVATIVES The Company is exposed to global market risks, including the effect of changes in foreign currency exchange rates and interest rates, and uses derivatives to manage financial exposures that occur in the normal course of business. The Company does not hold or issue derivatives for trading or speculative purposes. The Company may elect to designate certain derivatives as hedging instruments under U.S . GAAP. The Company formally documents all relationships between designated hedging instruments and hedged items, as well as its risk management objectives and strategies for undertaking hedge transactions. This process includes linking all derivatives designated as hedges to either recognized assets or liabilities or forecasted transactions and assessing, both at inception and on an ongoing basis, the effectiveness of the hedging relationships. 2023 FORM 10-K 77 The majority of derivatives outstanding as of May 31, 2023, are designated as foreign currency cash flow hedges, primarily for Euro/U.S. Dollar, British Pound/Euro, Chinese Yuan/U.S. Dollar and Japanese Yen/U.S. Dollar currency pairs. All derivatives are recognized on the Consolidated Balance Sheets at fair value and classified based on the instrument's maturity date. The following tables present the fair values of derivative instruments included within the Consolidated B alance Sheets: DERIVATIVE ASSETS BALANCE SHEET LOCATIONMAY 31, (Dollars in millions) 2023 2022 Derivatives formally designated as hedging instruments: Foreign exchange forwards and options Prepaid expenses and other current assets $ 480 $ 639 Foreign exchange forwards and options Deferred income taxes and other assets 64 206 Total derivatives formally designated as hedging instruments 544 845 Derivatives not designated as hedging instruments: Foreign exchange forwards and options and embedded derivatives Prepaid expenses and other current assets 13 35 Total derivatives not designated as hedging instruments 13 35 TOTAL DERIVATIVE ASSETS $ 557 $ 880 DERIVATIVE LIABILITIES BALANCE SHEET LOCATIONMAY 31, (Dollars in millions) 2023 2022 Derivatives formally designated as hedging instruments: Foreign exchange forwards and options Accrued liabilities $ 93 $ 37 Foreign exchange forwards and options Deferred income taxes and other liabilities 52 11 Total derivatives formally designated as hedging instruments 145 48 Derivatives not designated as hedging instruments: Foreign exchange forwards and options and embedded derivatives Accrued liabilities 35 29 Total derivatives not designated as hedging instruments 35 29 TOTAL DERIVATIVE LIABILITIES $ 180 $ 77 The following table presents the amounts in the Consolidated Statements of Income in which the effects of cash flow hedges are recorded and the effects of cash flow hedge activity on these line items for the fiscal years ended May 31, 2023, 2022 and 2021: YEAR ENDED MAY 31, 2023 2022 2021 (Dollars in millions) TOTALAMOUNT OF GAIN (LOSS) ON CASH FLOW HEDGE ACTIVITY TOTALAMOUNT OF GAIN (LOSS) ON CASH FLOW HEDGE ACTIVITY TOTALAMOUNT OF GAIN (LOSS) ON CASH FLOW HEDGE ACTIVITY Revenues $ 51,217 $ 26 $ 46,710 $ (82) $ 44,538 $ 45 Cost of sales 28,925 581 25,231 (23) 24,576 51 Demand creation expense 4,060 (5) 3,850 1 3,114 3 Other (income) expense, net (280) 338 (181) 130 14 (47) Interest expense (income), net (6) (8) 205 (7) 262 (7) NIKE, INC. 78The following tables present the amounts affecting the Consolidated Statements of Income for the years ended May 31, 2023, 2022 and 2021: (Dollars in millions)AMOUNT OF GAIN (LOSS) RECOGNIZED IN OTHER COMPREHENSIVE INCOME (LOSS) ON DERIVATIVES(1)AMOUNT OF GAIN (LOSS) RECLASSIFIED FROM ACCUMULATED OTHER COMPREHENSIVE INCOME (LOSS) INTO INCOME(1) YEAR ENDED MAY 31, LOCATION OF GAIN (LOSS) RECLASSIFIED FROM ACCUMULATED OTHER COMPREHENSIVE INCOME (LOSS) INTO INCOMEYEAR ENDED MAY 31, 2023 2022 2021 2023 2022 2021 Derivatives designated as cash flow hedges: Foreign exchange forwards and options $ 16 $ (39) $ (61) Revenues $ 26 $ (82) $ 45 Foreign exchange forwards and options 305 889 (563) Cost of sales 581 (23) 51 Foreign exchange forwards and options (1) (6) 5 Demand creation expense (5) 1 3 Foreign exchange forwards and options 207 492 (163) Other (income) expense, net 338 130 (47) Interest rate swaps(2) — — — Interest expense (income), net (8) (7) (7) Total designated cash flow hedges $ 527 $ 1,336 $ (782) $ 932 $ 19 $ 45 (1) For the fiscal years ended May 31, 2023, 2022, and 2021, the amounts recorded in Other (income) expense, net as a result of the discontinuance of cash flow hedges because the forecasted transactions were no longer probable of occurring were immaterial. (2) Gains and losses associated with terminated interest rate swaps, which were previously designated as cash flow hedges and recorded in Accumulated other comprehensive income (loss), will be released through Interest expense (income), net over the term of the issued debt. AMOUNT OF GAIN (LOSS) RECOGNIZED IN INCOME ON DERIVATIVES LOCATION OF GAIN (LOSS) RECOGNIZED IN INCOME ON DERIVATIVESYEAR ENDED MAY 31, (Dollars in millions) 2023 2022 2021 Derivatives designated as hedging instruments: Foreign exchange forwards and options and embedded derivatives $ 28 $ 38 $ (167) Other (income) expense, net CASH FLOW HEDGES All changes in fair value of derivatives designated as cash flow hedge instruments are recorded in Accumulated other comprehensive income (loss) until Net income is affected by the variability of cash flows of the hedged transaction. Effective hedge results are classified in the Consolidated Statements of Income in the same manner as the underlying exposure. When it is no longer probable the forecasted hedged transaction will occur in the initially identified time period, hedge accounting is discontinued and the Company accounts for the associated derivative as an undesignated instrument as discussed below . Additionally, the gains and losses associated with derivatives no longer designated as cash flow hedge instruments in Accumulated other comprehensive income (loss) are recognized immediately in Other (income) expense, net, if it is probable the forecasted hedged transaction will not occur by the end of the initially identified time period or within an additional two-month period thereafter. In rare circumstances, the additional period of time may exceed two months due to extenuating circumstances related to the nature of the forecasted transaction that are outside the control or influence of the Company . The purpose of the Company's foreign exchange risk management program is to lessen both the positive and negative ef fects of currency fluctuations on the Company's consolidated results of operations, financial position and cash flows. Foreign currency exposures the Company may elect to hedge in this manner include product costs, non-functional currency denominated revenues, intercompany revenues, demand creation expenses, investments in U.S . Dollar denominated available-for-sale debt securities and certain other intercompany transactions. Product cost foreign currency exposures are primarily generated through non-functional currency denominated product purchases. NIKE entities primarily purchase product in two ways: (1) Certain NIKE entities purchase product from the NIKE Trading Company ("NTC"), a wholly-owned sourcing hub that buys NIKE branded products from third-party factories, predominantly in U.S. Dollars. The NTC, whose functional currency is the U.S. Dollar, then sells the product to NIKE entities in their respective functional currencies. NTC sales to a NIKE entity with a different functional currency result in a foreign currency 2023 FORM 10-K 79 exposure for the NTC. (2) Other NIKE entities purchase product directly from third-party factories in U.S. Dollars. These purchases generate a foreign currency exposure for those NIKE entities with a functional currency other than the U.S. Dollar. The Company's policy permits the utilization of derivatives to reduce its foreign currency exposures where internal netting or other strategies cannot be effectively employed. Typically, the Company may enter into hedge contracts starting up to 12 to 24 months in advance of the forecasted transaction and may place incremental hedges up to 100% of the exposure by the time the forecasted transaction occurs. The total notional amount of outstanding foreign currency derivatives designated as cash flow hedges was $18.2 billion as of May 31, 2023. As of May 31, 2023, approximately $419 million of deferred net gains (net of tax) on both outstanding and matured derivatives in Accumulated other comprehensive income (loss) are expected to be reclassified to Net income during the next 12 months concurrent with the underlying hedged transactions also being recorded in Net income. Actual amounts ultimately reclassified to Net income are dependent on the exchange rates in effect when derivative contracts currently outstanding mature. As of May 31, 2023, the maximum term over which the Company hedges exposures to the variability of cash flows for its forecasted transactions was 27 months. FAIR VALUE HEDGES The Company has, in the past, been exposed to the risk of changes in the fair value of certain fixed-rate debt attributable to changes in interest rates. Derivatives used by the Company to hedge this risk are receive-fixed, pay-variable interest rate swaps. The Company had no interest rate swaps designated as fair value hedges as of May 31, 2023. NET INVESTMENT HEDGES The Company has, in the past, hedged and may, in the future, hedge the risk of variability in foreign currency-denominated net investments in wholly-owned international operations. All changes in fair value of the derivatives designated as net investment hedges are reported in Accumulated other comprehensive income (loss) along with the foreign currency translation adjustments on those investments. The Company had no outstanding net investment hedges as of May 31, 2023. UNDESIGNATED DERIVATIVE INSTRUMENTS The Company may elect to enter into foreign exchange forwards to mitigate the change in fair value of specific assets and liabilities on the Consolidated Balance Sheets. These undesignated instruments are recorded at fair value as a derivative asset or liability on the Consolidated Balance Sheets with their corresponding change in fair value recognized in Other (income) expense, net, together with the remeasurement gain or loss from the hedged balance sheet position. The total notional amount of outstanding undesignated derivative instruments was $4.7 billion as of May 31, 2023. CREDIT RISK The Company is exposed to credit-related losses in the event of nonperformance by counterparties to hedging instruments. The counterparties to all derivative transactions are major financial institutions with investment grade credit ratings; however , this does not eliminate the Company's exposure to credit risk with these institutions. This credit risk is limited to the unrealized gains in such contracts should any of these counterparties fail to perform as contracted. To manage this risk, the Company has established strict counterparty credit guidelines that are continually monitored. The Company's derivative contracts contain credit risk-related contingent features designed to protect against significant deterioration in counterparties' creditworthiness and their ultimate ability to settle outstanding derivative contracts in the normal course of business. The Company's bilateral credit-related contingent features generally require the owing entity, either the Company or the derivative counterparty, to post collateral for the portion of the fair value in excess of $50 million should the fair value of outstanding derivatives per counterparty be greater than $50 million. Additionally, a certain level of decline in credit rating of either the Company or the counterparty could trigger collateral requirements. As of May 31, 2023, the Company was in compliance with all credit risk-related contingent features, and derivative instruments with such features were in a net liability position of approximately $2 million. Accordingly, the Company posted no cash collateral as a result of these contingent features. Further, as of May 31, 2023, the Company had received $36 million in cash collateral from various counterparties to its derivative contracts. The Company considers the impact of the risk of counterparty default to be immaterial. For additional information related to the Company's derivative financial instruments and collateral, refer to Note 4 — Fair Value Measurements. NIKE, INC. 80NOTE 13 — ACCUMULATED OTHER COMPREHENSIVE INCOME (LOSS) The changes in Accumulated other comprehensive income (loss), net of tax, were as follows: (Dollars in millions)FOREIGN CURRENCY TRANSLATION ADJUSTMENT(1)CASH FLOW HEDGESNET INVESTMENT HEDGES(1)OTHER TOTAL Balance at May 31, 2022 $ (520) $ 779 $ 115 $ (56) $ 318 Other comprehensive income (loss): Other comprehensive gains (losses) before reclassifications(2) (91) 487 — (20) 376 Reclassifications to net income of previously deferred (gains) losses(3)358 (835) — 14 (463) Total other comprehensive income (loss) 267 (348) — (6) (87) Balance at May 31, 2023 $ (253) $ 431 $ 115 $ (62) $ 231 (1) The accumulated foreign currency translation adjustment and net investment hedge gains/losses related to an investment in a foreign subsidiary are reclassified to Net income upon sale or upon complete or substantially complete liquidation of the respective entity. (2) Net of tax benefit (expense) of $0 million, $(40) million, $0 million, $6 million and $(34) million, respectively. (3) Net of tax (benefit) expense of $(16) million, $97 million, $0 million, $(5) million and $76 million, respectively. (Dollars in millions)FOREIGN CURRENCY TRANSLATION ADJUSTMENT(1)CASH FLOW HEDGESNET INVESTMENT HEDGES(1)OTHER TOTAL Balance at May 31, 2021 $ 2 $ (435) $ 115 $ (62) $ (380) Other comprehensive income (loss): Other comprehensive gains (losses) before reclassifications(2) (522) 1,222 — 28 728 Reclassifications to net income of previously deferred (gains) losses(3) — (8) — (22) (30) Total other comprehensive income (loss) (522) 1,214 — 6 698 Balance at May 31, 2022 $ (520) $ 779 $ 115 $ (56) $ 318 (1) The accumulated foreign currency translation adjustment and net investment hedge gains/losses related to an investment in a foreign subsidiary are reclassified to Net income upon sale or upon complete or substantially complete liquidation of the respective entity. (2) Net of tax benefit (expense) of $0 million, $(114) million, $0 million, $(9) million and $(123) million, respectively. (3) Net of tax (benefit) expense of $0 million, $11 million, $0 million, $9 million and $20 million, respectively. 2023 FORM 10-K 81 The following table summarizes the reclassifications from Accumulated other comprehensive income (loss) to the Consolidated Statements of Income: AMOUNT OF GAIN (LOSS) RECLASSIFIED FROM ACCUMULATED OTHER COMPREHENSIVE INCOME (LOSS) INTO INCOMELOCATION OF GAIN (LOSS) RECLASSIFIED FROM ACCUMULATED OTHER COMPREHENSIVE INCOME (LOSS) INTO INCOMEYEAR ENDED MAY 31, (Dollars in millions) 2023 2022 Gains (losses) on foreign currency translation adjustment $ (374) $ — Other (income) expense, net Total before tax (374) — Tax (expense) benefit 16 — Gain (loss) net of tax (358) — Gains (losses) on cash flow hedges: Foreign exchange forwards and options 26 (82) Revenues Foreign exchange forwards and options 581 (23) Cost of sales Foreign exchange forwards and options (5) 1 Demand creation expense Foreign exchange forwards and options 338 130 Other (income) expense, net Interest rate swaps (8) (7) Interest expense (income), net Total before tax 932 19 Tax (expense) benefit (97) (11) Gain (loss) net of tax 835 8 Gains (losses) on other (19) 31 Other (income) expense, net Total before tax (19) 31 Tax (expense) benefit 5 (9) Gain (loss) net of tax (14) 22 Total net gain (loss) reclassified for the period $ 463 $ 30 NIKE, INC. 82NOTE 14 — REVENUES DISAGGREGATION OF REVENUES The following tables present the Company's Revenues disaggregated by reportable operating segment, major product line and distribution channel: YEAR ENDED MAY 31, 2023 (Dollars in millions)NORTH AMERICAEUROPE, MIDDLE EAST & AFRICAGREATER CHINAASIA PACIFIC & LATIN AMERICA(1)GLOBAL BRAND DIVISIONSTOTAL NIKE BRAND CONVERSE CORPORATETOTAL NIKE, INC. Revenues by: Footwear $ 14,897 $ 8,260 $ 5,435 $ 4,543 $ — $ 33,135 $ 2,155 $ — $ 35,290 Apparel 5,947 4,566 1,666 1,664 — 13,843 90 — 13,933 Equipment 764 592 147 224 — 1,727 28 — 1,755 Other — — — — 58 58 154 27 239 TOTAL REVENUES $ 21,608 $ 13,418 $ 7,248 $ 6,431 $ 58 $ 48,763 $ 2,427 $ 27 $ 51,217 Revenues by: Sales to Wholesale Customers $ 11,273 $ 8,522 $ 3,866 $ 3,736 $ — $ 27,397 $ 1,299 $ — $ 28,696 Sales through Direct to Consumer 10,335 4,896 3,382 2,695 — 21,308 974 — 22,282 Other — — — — 58 58 154 27 239 TOTAL REVENUES $ 21,608 $ 13,418 $ 7,248 $ 6,431 $ 58 $ 48,763 $ 2,427 $ 27 $ 51,217 (1) Refer to Note 18 — Acquisitions and Divestitures for additional information on the transition of the Company's NIKE Brand businesses in its CASA territory to third-party distributors. YEAR ENDED MAY 31, 2022 (Dollars in millions)NORTH AMERICAEUROPE, MIDDLE EAST & AFRICAGREATER CHINAASIA PACIFIC & LATIN AMERICAGLOBAL BRAND DIVISIONSTOTAL NIKE BRAND CONVERSE CORPORATETOTAL NIKE, INC. Revenues by: Footwear $ 12,228 $ 7,388 $ 5,416 $ 4,111 $ — $ 29,143 $ 2,094 $ — $ 31,237 Apparel 5,492 4,527 1,938 1,610 — 13,567 103 — 13,670 Equipment 633 564 193 234 — 1,624 26 — 1,650 Other — — — — 102 102 123 (72) 153 TOTAL REVENUES $ 18,353 $ 12,479 $ 7,547 $ 5,955 $ 102 $ 44,436 $ 2,346 $ (72) $ 46,710 Revenues by: Sales to Wholesale Customers $ 9,621 $ 8,377 $ 4,081 $ 3,529 $ — $ 25,608 $ 1,292 $ — $ 26,900 Sales through Direct to Consumer 8,732 4,102 3,466 2,426 — 18,726 931 — 19,657 Other — — — — 102 102 123 (72) 153 TOTAL REVENUES $ 18,353 $ 12,479 $ 7,547 $ 5,955 $ 102 $ 44,436 $ 2,346 $ (72) $ 46,710 2023 FORM 10-K 83 YEAR ENDED MAY 31, 2021 (Dollars in millions)NORTH AMERICAEUROPE, MIDDLE EAST & AFRICAGREATER CHINAASIA PACIFIC & LATIN AMERICA(1)GLOBAL BRAND DIVISIONSTOTAL NIKE BRAND CONVERSE CORPORATETOTAL NIKE, INC. Revenues by: Footwear $ 11,644 $ 6,970 $ 5,748 $ 3,659 $ — $ 28,021 $ 1,986 $ — $ 30,007 Apparel 5,028 3,996 2,347 1,494 — 12,865 104 — 12,969 Equipment 507 490 195 190 — 1,382 29 — 1,411 Other — — — — 25 25 86 40 151 TOTAL REVENUES $ 17,179 $ 11,456 $ 8,290 $ 5,343 $ 25 $ 42,293 $ 2,205 $ 40 $ 44,538 Revenues by: Sales to Wholesale Customers $ 10,186 $ 7,812 $ 4,513 $ 3,387 $ — $ 25,898 $ 1,353 $ — $ 27,251 Sales through Direct to Consumer 6,993 3,644 3,777 1,956 — 16,370 766 — 17,136 Other — — — — 25 25 86 40 151 TOTAL REVENUES $ 17,179 $ 11,456 $ 8,290 $ 5,343 $ 25 $ 42,293 $ 2,205 $ 40 $ 44,538 (1) Refer to Note 18 — Acquisitions and Divestitures for additional information on the transition of the Company's NIKE Brand business in Brazil to a third- party distributor. For the fiscal years ended May 31, 2023, 2022 and 2021, Global Brand Divisions revenues include NIKE Brand licensing and other miscellaneous revenues that are not part of a geographic operating segment. Converse Other revenues were primarily attributable to licensing businesses. Corporate revenues primarily consisted of foreign currency hedge gains and losses related to revenues generated by entities within the NIKE Brand geographic operating segments and Converse but managed through the Company's central foreign exchange risk management program. As of May 31, 2023 and 2022, the Company did not have any contract assets and had an immaterial amount of contract liabilities recorded in Accrued liabilities on the Consolidated Balance Sheets. SALES-RELATED RESERVES As of May 31, 2023 and 2022, the Company's sales-related reserve balance, which includes returns, post-invoice sales discounts and miscellaneous claims, was $994 million and $1,015 million, respectively, recorded in Accrued liabilities on the Consolidated Balance Sheets. The estimated cost of inventory for expected product returns was $226 million and $194 million as of May 31, 2023 and 2022, respectively, and was recorded in Prepaid expenses and other current assets on the Consolidated Balance Sheets. NOTE 15 — OPERATING SEGMENTS AND RELATED INFORMATION The Company's operating segments are evidence of the structure of the Company's internal organization. The NIKE Brand segments are defined by geographic regions for operations participating in NIK E Brand sales activity. Each NIKE Brand geographic segment operates predominantly in one industry: the design, development, marketing and selling of athletic footwear, apparel and equipment. The Company's reportable operating segments for the NIKE Brand are: North America; Europe, Middle East & Africa ("EMEA"); Greater China; and Asia Pacific & Latin America ("APLA"), and include results for the NIKE and Jordan brands. Refer to Note 18 — Acquisitions and Divestitures for information regarding the transition of NIKE Brand businesses in certain countries within APLA to third-party distributors. The Company's NIKE Direct operations are managed within each NIKE Brand geographic operating segment. Converse is also a reportable segment for the Company and operates in one industry: the design, marketing, licensing and selling of athletic lifestyle sneakers, apparel and accessories. Global Brand Divisions is included within the NIKE Brand for presentation purposes to align with the way management views the Company. Global Brand Divisions revenues include NIKE Brand licensing and other miscellaneous revenues that are not part of a geographic operating segment. Global Brand Divisions costs represent demand creation and operating overhead expense that include product creation and design expenses centrally managed for the NIK E Brand, as well as costs associated with NIKE Direct global digital operations and enterprise technology. NIKE, INC. 84Corporate consists primarily of unallocated general and administrative expenses, including expenses associated with centrally managed departments; depreciation and amortization related to the Company's headquarters; unallocated insurance, benefit and compensation programs, including stock-based compensation; and certain foreign currency gains and losses, including certain hedge gains and losses. The primary financial measure used by the Company to evaluate performance of individual operating segments is earnings before interest and taxes ("EBIT"), which represents Net income before Interest expense (income), net and Income tax expense in the Consolidated Statements of Income. As part of the Company's centrally managed foreign exchange risk management program, standard foreign currency rates are assigned twice per year to each NIKE Brand entity in the Company's geographic operating segments and to Converse. These rates are set approximately nine and twelve months in advance of the future selling seasons to which they relate (specifically , for each currency, one standard rate applies to the fall and holiday selling seasons, and one standard rate applies to the spring and summer selling seasons) based on average market spot rates in the calendar month preceding the date they are established. Inventories and Cost of sales for geographic operating segments and Converse reflect the use of these standard rates to record non-functional currency product purchases in the entity's functional currency . Differences between assigned standard foreign currency rates and actual market rates are included in Corporate, together with foreign currency hedge gains and losses generated from the Company's centrally managed foreign exchange risk management program and other conversion gains and losses. Accounts receivable, net, Inventories and Property, plant and equipment, net for operating segments are regularly reviewed by management and are therefore provided below. 2023 FORM 10-K 85 YEAR ENDED MAY 31, (Dollars in millions) 2023 2022 2021 REVENUES North America $ 21,608 $ 18,353 $ 17,179 Europe, Middle East & Africa 13,418 12,479 11,456 Greater China 7,248 7,547 8,290 Asia Pacific & Latin America 6,431 5,955 5,343 Global Brand Divisions 58 102 25 Total NIKE Brand 48,763 44,436 42,293 Converse 2,427 2,346 2,205 Corporate 27 (72) 40 TOTAL NIKE, INC. REVENUES $ 51,217 $ 46,710 $ 44,538 EARNINGS BEFORE INTEREST AND TAXES North America $ 5,454 $ 5,114 $ 5,089 Europe, Middle East & Africa 3,531 3,293 2,435 Greater China 2,283 2,365 3,243 Asia Pacific & Latin America 1,932 1,896 1,530 Global Brand Divisions (4,841) (4,262) (3,656) Converse 676 669 543 Corporate (2,840) (2,219) (2,261) Interest expense (income), net (6) 205 262 TOTAL NIKE, INC. INCOME BEFORE INCOME TAXES $ 6,201 $ 6,651 $ 6,661 ADDITIONS TO PROPERTY, PLANT AND EQUIPMENT North America $ 283 $ 146 $ 98 Europe, Middle East & Africa 215 197 153 Greater China 56 78 94 Asia Pacific & Latin America 64 56 54 Global Brand Divisions 271 222 278 Total NIKE Brand 889 699 677 Converse 7 9 7 Corporate 140 103 107 TOTAL ADDITIONS TO PROPERTY, PLANT AND EQUIPMENT $ 1,036 $ 811 $ 791 DEPRECIATION North America $ 128 $ 124 $ 130 Europe, Middle East & Africa 120 134 136 Greater China 54 41 46 Asia Pacific & Latin America 42 42 43 Global Brand Divisions 211 220 222 Total NIKE Brand 555 561 577 Converse 17 22 26 Corporate 131 134 141 TOTAL DEPRECIATION $ 703 $ 717 $ 744 NIKE, INC. 86AS OF MAY 31, (Dollars in millions) 2023 2022 ACCOUNTS RECEIVABLE, NET North America $ 1,653 $ 1,850 Europe, Middle East & Africa 1,197 1,351 Greater China 162 406 Asia Pacific & Latin America(1) 700 664 Global Brand Divisions 96 113 Total NIKE Brand 3,808 4,384 Converse 235 230 Corporate 88 53 TOTAL ACCOUNTS RECEIVABLE, NET $ 4,131 $ 4,667 INVENTORIES North America $ 3,806 $ 4,098 Europe, Middle East & Africa 2,167 1,887 Greater China 973 1,044 Asia Pacific & Latin America(1) 894 686 Global Brand Divisions 232 197 Total NIKE Brand 8,072 7,912 Converse 305 279 Corporate 77 229 TOTAL INVENTORIES $ 8,454 $ 8,420 PROPERTY, PLANT AND EQUIPMENT, NET North America $ 794 $ 639 Europe, Middle East & Africa 1,009 920 Greater China 292 303 Asia Pacific & Latin America(1) 279 274 Global Brand Divisions 840 789 Total NIKE Brand 3,214 2,925 Converse 38 49 Corporate 1,829 1,817 TOTAL PROPERTY, PLANT AND EQUIPMENT, NET $ 5,081 $ 4,791 (1) Excludes assets held-for-sale as of May 31, 2022. See Note 18 — Acquisitions and Divestitures for additional information. REVENUES AND LONG-LIVED ASSETS BY GEOGRAPHIC AREA After allocation of revenues for Global Brand Divisions, Converse and Corporate to geographical areas based on the location where the sales originated, revenues by geographical area are essentially the same as reported above for the NIK E Brand operating segments with the exception of the United States. Revenues derived in the United States were $22,007 million, $18,749 million and $17,363 million for the fiscal years ended May 31, 2023, 2022 and 2021, respectively. The Company's largest concentrations of long-lived assets primarily consist of the Company's corporate headquarters, retail locations and distribution facilities in the United States and China, as well as distribution facilities in Belgium. Long-lived assets attributable to operations in these countries, which consist of property , plant and equipment, net and operating lease ROU assets, net, were as follows: MAY 31, (Dollars in millions) 2023 2022 United States $ 5,129 $ 4,916 Belgium 702 646 China 559 538 2023 FORM 10-K 87 NOTE 16 — COMMITMENTS AND CONTINGENCIES As of May 31, 2023 and 2022, the Company had bank guarantees and letters of credit outstanding totaling $588 million and $289 million, respectively, issued primarily for real estate agreements, self-insurance programs, other general business obligations and legal matters. In connection with various contracts and agreements, the Company provides routine indemnification relating to the enforceability of intellectual property rights, coverage for legal issues that arise and other items where the Company is acting as the guarantor . Currently, the Company has several such agreements in place. However, based on the Company's historical experience and the estimated probability of future loss, the Company has determined the fair value of such indemnification is not material to the Company's financial position or results of operations. In the ordinary course of business, the Company is subject to various legal proceedings, claims and government investigations relating to its business, products and actions of its employees and representatives, including contractual and employment relationships, product liability, antitrust, customs, tax, intellectual property and other matters. The outcome of these legal matters is inherently uncertain, and the Company cannot predict the eventual outcome of currently pending matters, the timing of their ultimate resolution or the eventual losses, fines, penalties or consequences relating to those matters. When a loss related to a legal proceeding or claim is probable and reasonably estimable, the Company accrues its best estimate for the ultimate resolution of the matter. If one or more legal matters were to be resolved against the Company in a reporting period for amounts above management's expectations, the Company's financial position, operating results and cash flows for that reporting period could be materially adversely affected. In the opinion of management, based on its current knowledge and after consultation with counsel, the Company does not believe any currently pending legal matters will have a material adverse impact on the Company's results of operations, financial position or cash flows, except as described below . BELGIAN CUSTOMS CLAIM The Company has received claims for certain years from the Belgian Customs Authorities for alleged underpaid duties related to products imported beginning in fiscal 2018. The Company disputes these claims and has engaged in the appellate process. The Company has issued bank guarantees in order to appeal the claims. At this time, the Company is unable to estimate the range of loss and cannot predict the final outcome as it could take several years to reach a resolution on this matter . If this matter is ultimately resolved against the Company, the amounts owed, including fines, penalties and other consequences relating to the matter, could have a material adverse effect on the Company's results of operations, financial position and cash flows. NOTE 17 — LEASES Lease expense is recognized in Cost of sales or Operating overhead expense within the Consolidated S tatements of Income, based on the underlying nature of the leased asset. For the fiscal years ended May 31, 2023, 2022 and 2021, lease expense primarily consisted of operating lease costs of $585 million, $593 million and $589 million, respectively. Lease expense also consisted of $403 million, $366 million and $347 million for fiscal years ended May 31, 2023, 2022 and 2021, respectively, primarily related to variable lease costs, which includes an immaterial amount of short-term lease costs. As of and for the fiscal years ended May 31, 2023 and 2022 and 2021, finance leases were not a material component of the Company's lease portfolio. The undiscounted cash flows for future maturities of the Company 's operating lease liabilities and the reconciliation to the Operating lease liabilities recognized in the Company's Consolidated B alance Sheets are as follows: (Dollars in millions) AS OF MAY 31, 2023(1) Fiscal 2024 $ 506 Fiscal 2025 562 Fiscal 2026 490 Fiscal 2027 436 Fiscal 2028 369 Thereafter 1,225 Total undiscounted future cash flows related to lease payments $ 3,588 Less interest 377 Present value of lease liabilities $ 3,211 (1) Excludes $278 million as of May 31, 2023, of future operating lease payments for lease agreements signed but not yet commenced. NIKE, INC. 88The following table includes supplemental information used to calculate the present value of Operating lease liabilities: AS OF MAY 31, 2023 2022 Weighted-average remaining lease term (in years) 7.5 7.8 Weighted-average discount rate 2.5 % 2.3 % The following table includes supplemental cash and non-cash information related to operating leases: YEAR ENDED MAY 31, (Dollars in millions) 2023 2022 2021 Cash paid for amounts included in the measurement of lease liabilities: Operating cash flows from operating leases $ 575 $ 589 $ 583 Operating lease right-of-use assets obtained in exchange for new operating lease liabilities $ 602 $ 537 $ 489 NOTE 18 — ACQUISITIONS AND DIVESTITURES ACQUISITIONS During fiscal 2023, 2022 and 2021, the Company made multiple acquisitions focused on gaining new capabilities to fuel its Consumer Direct Acceleration strategy, serving consumers personally at a global scale. The impact of acquisitions, individually and in aggregate, was not considered material to the Company's Consolidated Financial S tatements. DIVESTITURES During the fourth quarter of fiscal 2022, the Company entered into separate definitive agreements to sell its entities in Argentina and Uruguay as well as its entity in Chile to third-party distributors. The sale of the Company's entity in Chile to a third-party distributor was completed during the first quarter of fiscal 2023. The impacts from the transaction were not material to the Company's Consolidated Financial Statements. The sale of the Company's entities in Argentina and Uruguay to a third-party distributor was completed during the second quarter of fiscal 2023 and the net loss on the sale of these entities totaled approximately $550 million. This loss included $389 million, recognized primarily in fiscal 2020, largely due to the anticipated release of the cumulative foreign currency translation losses. The remaining loss recognized in fiscal 2023 was due to the devaluation of local currency and cash equivalents included in the transferred assets. Upon completion of the sale, the foreign currency translation losses recorded in Accumulated other comprehensive income (loss) were reclassified to Net income within Other (income) expense, net, on the Company's Consolidated Statements of Comprehensive Income along with the allowance for previously recognized losses recorded in Accrued liabilities. The net loss was classified within Corporate. The net cash proceeds received are reflected within Other investing activities on the Company's Consolidated S tatements of Cash Flows. The related assets and liabilities of these entities within the Company's APLA operating segment were classified as held-for-sale on the Consolidated Balance Sheets within Prepaid expenses and other currents and Accrued liabilities, respectively, until the transactions closed. As of May 31, 2022, held-for-sale assets were $182 million and held-for-sale liabilities were $58 million. OTHER DIVESTITURES During fiscal 2020, the Company entered into a definitive agreement to sell substantially all of its NIK E Brand operations in Brazil and shift to a distributor operating model. During fiscal 2021, the transaction closed and the Company recognized a loss of approximately $50 million within Other (income) expense, net classified within Corporate, on the Consolidated Statements of Income. Cash proceeds received were reflected within Other investing activities on the Consolidated S tatements of Cash Flows. 2023 FORM 10-K 89 NOTE 19 — RESTRUCTURING In fiscal 2021, the Company substantially completed a series of leadership and operating model changes to streamline and speed up the strategic execution of the Consumer Direct Acceleration. For the fiscal year ended May 31, 2021, the Company recognized employee termination costs of $214 million and $35 million within Operating overhead expense and Cost of sales, respectively , and made cash payments of $212 million. Additionally, the related stock-based compensation expense recorded within Operating overhead expense and Cost of sales was $41 million and $4 million, respectively. These costs were classified within Corporate. NIKE, INC. 90ITEM 9. CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE There has been no change of accountants nor any disagreements with accountants on any matter of accounting principles or practices or financial statement disclosure required to be reported under this Item. ITEM 9A. CONTROLS AND PROCEDURES We maintain disclosure controls and procedures that are designed to provide reasonable assurance that information required to be disclosed in our Securities Exchange Act of 1934, as amended (the "Exchange Act"), reports is recorded, processed, summarized and reported within the time periods specified in the S ecurities and Exchange Commission's rules and forms and that such information is accumulated and communicated to our management, including our Chief E xecutive Officer and Chief Financial Officer, as appropriate, to allow for timely decisions regarding required disclosure. In designing and evaluating the disclosure controls and procedures, management recognizes that any controls and procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving the desired control objectives, and management is required to apply its judgment in evaluating the cost-benefit relationship of possible controls and procedures. We carry out a variety of ongoing procedures, under the supervision and with the participation of our management, including our Chief Executive Officer and Chief Financial Officer, to evaluate the effectiveness of the design and operation of our disclosure controls and procedures. Based on the foregoing, our Chief Executive Officer and Chief Financial Officer concluded that our disclosure controls and procedures were effective at the reasonable assurance level as of May 31, 2023. "Management's Annual Report on Internal Control Over Financial Reporting" is included in Item 8 of this Annual Report. We are continuing several transformation initiatives to centralize and simplify our business processes and systems. These are long-term initiatives, which we believe will enhance our internal control over financial reporting due to increased automation and further integration of related processes. We will continue to monitor our internal control over financial reporting for effectiveness throughout these transformation initiatives. There have not been any changes in our internal control over financial reporting during our most recent fiscal quarter that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting. ITEM 9B. OTHER INFORMATION No disclosure is required under this item. ITEM 9C. DISCLOSURE REGARDING FOREIGN JURISDICTIONS THAT PREVENT INSPECTIONS Not applicable. 2023 FORM 10-K 91 PART III ITEM 10. DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE The information required by Item 401 of Regulation S-K regarding directors is included under "Corporate Governance — NIKE, Inc. Board of Directors" in the definitive Proxy Statement for our 2023 Annual Meeting of Shareholders and is incorporated herein by reference. The information required by Item 401 of Regulation S-K regarding executive officers is included under "Information about our Executive Officers" in Item 1 of this Annual Report. The information required by Item 406 of Regulation S-K is included under "Corporate Governance — Code of Conduct" in the definitive P roxy Statement for our 2023 Annual Meeting of Shareholders and is incorporated herein by reference. The information required by Items 407(d)(4) and (d)(5) of Regulation S-K regarding the Audit & Finance Committee of the Board of Directors is included under "Corporate Governance — Board Structure and Responsibilities — Board Committees" in the definitive Proxy Statement for our 2023 Annual Meeting of Shareholders and is incorporated herein by reference. ITEM 11. EXECUTIVE COMPENSATION The information required by Items 402, 407(e)(4) and 407(e)(5) of Regulation S -K regarding executive compensation is included under "Corporate Governance — Director Compensation for Fiscal 2023," "Executive Compensation — Compensation Discussion and Analysis," "Executive Compensation — Executive Compensation Tables," and "Additional Information — Compensation Committee Interlocks and Insider Participation," in the definitive Proxy Statement for our 2023 Annual Meeting of Shareholders and is incorporated herein by reference. ITEM 12. SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS The information required by Item 201(d) of Regulation S-K is included under "Executive Compensation — Executive Compensation Tables — Equity Compensation Plan Information" in the definitive Proxy Statement for our 2023 Annual Meeting of Shareholders and is incorporated herein by reference. The information required by Item 403 of Regulation S-K is included under "Stock Ownership Information — Stock Holdings of Certain Owners and Management" in the definitive Proxy Statement for our 2023 Annual Meeting of Shareholders and is incorporated herein by reference. ITEM 13. CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS AND DIRECTOR INDEPENDENCE The information required by Items 404 and 407(a) of Regulation S -K is included under "Additional Information — Transactions with Related Persons" and "Corporate Governance — NIKE, Inc. Board of Directors — Director Independence" in the definitive Proxy Statement for our 2023 Annual Meeting of Shareholders and is incorporated herein by reference. ITEM 14. PRINCIPAL ACCOUNTANT FEES AND SERVICES The information required by Item 9(e) of Schedule 14A is included under "Audit Matters — Ratification of Appointment of Independent Registered Public Accounting Firm" in the definitive Proxy Statement for our 2023 Annual Meeting of Shareholders and is incorporated herein by reference. NIKE, INC. 92PART IV ITEM 15. EXHIBITS AND FINANCIAL STATEMENT SCHEDULES (a) The following documents are filed as part of this Annual Report: FORM 10-K PAGE NO. 1. Financial Statements: Report of Independent Registered Public Accounting Firm (PCAOB ID 238) 53 Consolidated Statements of Income for each of the three years ended May 31, 2023, May 31, 2022 and May 31, 202155 Consolidated Statements of Comprehensive Income for each of the three years ended May 31, 2023, May 31, 2022 and May 31, 202156 Consolidated Balance Sheets at May 31, 2023 and May 31, 2022 57 Consolidated Statements of Cash Flows for each of the three years ended May 31, 2023, May 31, 2022 and May 31, 202158 Consolidated Statements of Shareholders' Equity for each of the three years ended May 31, 2023, May 31, 2022 and May 31, 202159 Notes to Consolidated Financial Statements 60 2. Financial Statement Schedule: II — Valuation and Qualifying Accounts for the years ended May 31, 2023, 2022 and 2021 96 All other schedules are omitted because they are not applicable or the required information is shown in the financial statements or notes thereto. 3. Exhibits: 3.1 Restated Articles of Incorporation, as amended (incorporated by reference to Exhibit 3.1 to the Company's Quarterly Report on Form 10-Q for the fiscal quarter ended November 30, 2015). 3.2 Fifth Restated Bylaws, as amended (incorporated by reference to Exhibit 3.1 to the Company's Current Report on Form 8-K filed June 19, 2020). 4.1 Restated Articles of Incorporation, as amended (see Exhibit 3.1). 4.2 Fifth Restated Bylaws, as amended (see Exhibit 3.2). 4.3 Indenture dated as of April 26, 2013, by and between NIKE, Inc. and Deutsche Bank Trust Company Americas, as trustee (incorporated by reference to Exhibit 4.1 to the Company's Form 8-K filed April 26, 2013). 4.4 Second Supplemental Indenture, dated as of October 29, 2015, by and between NIKE, Inc. and Deutsche Bank Trust Company Americas, as trustee, including the form of 3.875% Notes due 2045 (incorporated by reference to Exhibit 4.2 to the Company's Form 8-K filed October 29, 2015). 4.5 Third Supplemental Indenture, dated as of October 21, 2016, by and between NIKE, Inc. and Deutsche Bank Trust Company Americas, as trustee, including the form of 2.375% Notes due 2026 and form of 3.375% Notes due 2046 (incorporated by reference to Exhibit 4.2 to the Company's Form 8-K filed October 21, 2016). 4.6 Fourth Supplemental Indenture, dated as of March 27, 2020, by and between NIKE, Inc. and Deutsche Bank Trust Company Americas, as trustee, including the form of 2.400% Notes due 2025, form of 2.750% Notes due 2027, form of 2.850% Notes due 2030, form of 3.250% Notes due 2040 and form of 3.375% Notes due 2050 (incorporated by reference to Exhibit 4.2 to the Company's Form 8-K filed March 27, 2020). 4.7 Description of Registrants Securities (incorporated by reference to Exhibit 4.6 to the Company's Annual Report on Form 10-K for the fiscal year ended May 31, 2019). 10.1 Form of Non-Statutory Stock Option Agreement for options granted to non-employee directors under the 1990 Stock Incentive Plan (incorporated by reference to Exhibit 10.2 to the Company's Annual Report on Form 10-K for the fiscal year ended May 31, 2010).* 10.2 Form of Restricted Stock Agreement for non-employee directors under the 1990 Stock Incentive Plan (incorporated by reference to Exhibit 10.4 to the Company's Annual Report on Form 10-K for the fiscal year ended May 31, 2014).* 10.3 Form of Non-Statutory Stock Option Agreement for options granted to executives under the Stock Incentive Plan (incorporated by reference to Exhibit 10.1 to the Company's Quarterly Report on Form 10-Q for the fiscal quarter ended February 28, 2018).* 2023 FORM 10-K 93 10.4 Form of Indemnity Agreement entered into between the Company and each of its officers and directors (incorporated by reference to Exhibit 10.2 to the Company's Annual Report on Form 10-K for the fiscal year ended May 31, 2008).* 10.5 NIKE, Inc. 1990 Stock Incentive Plan (incorporated by reference to Exhibit 10.7 to the Company's Annual Report on Form 10-K for the fiscal year ended May 31, 2014).* 10.6 NIKE, Inc. Deferred Compensation Plan (Amended and Restated effective April 1, 2013) (incorporated by reference to Exhibit 10.9 to the Company's Annual Report on Form 10-K for the fiscal year ended May 31, 2013).* 10.7 NIKE, Inc. Deferred Compensation Plan (Amended and Restated effective June 1, 2004) (applicable to amounts deferred before January 1, 2005) (incorporated by reference to E xhibit 10.6 to the Company's Annual Report on Form 10-K for the fiscal year ended May 31, 2004).* 10.8 Amendment No. 1 effective January 1, 2008 to the NIKE, Inc. Deferred Compensation Plan (June 1, 2004 Restatement) (incorporated by reference to Exhibit 10.9 to the Company's Annual Report on Form 10-K for the fiscal year ended May 31, 2009).* 10.9 NIKE, Inc. Foreign Subsidiary Employee Stock Purchase Plan (incorporated by reference to Exhibit 10.1 to the Company's Quarterly Report on Form 10-Q for the fiscal quarter ended November 30, 2008).* 10.10 Amended and Restated Covenant Not to Compete and Non-Disclosure Agreement between NIKE, Inc. and Mark G. Parker dated July 24, 2008 (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed July 24, 2008).* 10.11 Form of Restricted Stock Unit Agreement under the Stock Incentive Plan (incorporated by reference to Exhibit 10.2 to the Company's Quarterly Report on Form 10-Q for the fiscal quarter ended February 28, 2018).* 10.12 Form of Covenant Not to Compete and Non-Disclosure Agreement between NIKE, Inc. and its executive officers (other than Mark G. Parker and John J. Donahoe II) (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed February 18, 2020).* 10.13 Policy for Recoupment of Incentive Compensation (incorporated by reference to Exhibit 10.3 to the Company's Current Report on Form 8-K filed July 20, 2010).* 10.14 NIKE, Inc. Stock Incentive Plan (incorporated by reference to Exhibit 10.2 to the Company's Current Report on Form 8-K filed September 23, 2015).* 10.15 Form of Discretionary Performance Award Agreement (incorporated by reference to Exhibit 10.22 to the Company's Annual Report on Form 10-K for the fiscal year ended May 31, 2018).* 10.16 NIKE, Inc. Amended and Restated Long-Term Incentive Plan (incorporated by reference to Exhibit A to the Company's definitive Proxy Statement filed July 25, 2017).* 10.17 Offer Letter between NIKE, Inc. and John J. Donahoe II (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed October 22, 2019).* 10.18 Form of Covenant Not to Compete and Non-Disclosure Agreement between NIKE, Inc. and John J. Donahoe II (incorporated by reference to Exhibit 10.3 to the Company's Current Report on Form 8-K filed October 22, 2019).* 10.19 Form of Performance-Based Stock Option Agreement (incorporated by reference to Exhibit 10.2 to the Company's Current Report on Form 8-K filed October 22, 2019). 10.20 Letter Agreement between NIKE, Inc. and Mark G. Parker (incorporated by reference to Exhibit 10.6 to the Company's Current Report on Form 8-K filed October 22, 2019).* 10.21 NIKE, Inc. Executive Performance Sharing Plan (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed June 19, 2020).* 10.22 NIKE, Inc. Amended and Restated Long-Term Incentive Plan (incorporated by reference to Exhibit 10.2 to the Company's Current Report on Form 8-K filed June 19, 2020).* 10.23 Form of Non-Statutory Stock Option Agreement under the NIKE, Inc. Stock Incentive Plan (incorporated by reference to Exhibit 10.3 to the Company's Current Report on Form 8-K filed June 19, 2020).* 10.24 Form of Restricted Stock Unit Agreement under the NIKE, Inc. Stock Incentive Plan (incorporated by reference to Exhibit 10.4 to the Company's Current Report on Form 8-K filed June 19, 2020).* 10.25 NIKE, Inc. Stock Incentive Plan (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed September 18, 2020).* 10.26 NIKE, Inc. Performance-Based Restricted Stock Unit Agreement under the NIKE, Inc. Stock Incentive Plan (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed on June 17, 2021).* 10.27 Credit Agreement, dated as of March 11, 2022, among NIKE, Inc., Bank of America, N.A., as Administrative Agent, and the other Banks named therein (incorporated by reference to Exhibit 10.2 to the Company's Current Report on Form 8-K filed March 14, 2022). 10.28 NIKE, Inc. Employee Stock Purchase Plan, as amended (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed on September 14, 2022). 10.29 Credit Agreement, dated as of March 10, 2023, among NIKE, Inc., Bank of America, N.A., as Administrative Agent, and the other Banks named therein (incorporated by reference to Exhibit 10.1 to the Company's Current Report on Form 8-K filed March 13, 2023). 21 Subsidiaries of the Registrant. 23 Consent of PricewaterhouseCoopers LLP, Independent Registered Public Accounting Firm (included within this Annual Report on Form 10-K). 31.1 Rule 13a-14(a)/15d-14(a) Certification of Chief Executive Officer. 31.2 Rule 13a-14(a)/15d-14(a) Certification of Chief Financial Officer. 32† Section 1350 Certifications. NIKE, INC. 94101.INS Inline XBRL Instance Document - the instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document. 101.SCH Inline XBRL Taxonomy Extension Schema 101.CAL Inline XBRL Taxonomy Extension Calculation Linkbase 101.DEF Inline XBRL Taxonomy Extension Definition Document 101.LAB Inline XBRL Taxonomy Extension Label Linkbase 101.PRE Inline XBRL Taxonomy Extension Presentation Linkbase 104 Cover Page Interactive Data File - formatted in Inline XBRL and included in Exhibit 101 * Management contract or compensatory plan or arrangement. † Furnished herewith The Exhibits filed herewith do not include certain instruments with respect to long-term debt of NIKE and its subsidiaries, inasmuch as the total amount of debt authorized under any such instrument does not exceed 10 percent of the total assets of NIKE and its subsidiaries on a consolidated basis. NIKE agrees, pursuant to Item 601(b)(4)(iii) of Regulation S-K, that it will furnish a copy of any such instrument to the SEC upon request. 2023 FORM 10-K 95 SCHEDULE II — VALUATION AND QUALIFYING ACCOUNTS (Dollars in millions)BALANCE AT BEGINNING OF PERIODCHARGED TO COSTS AND EXPENSESCHARGED  TO OTHER  ACCOUNTS(1)WRITE-OFFS, NETBALANCE AT END OF PERIOD Sales returns reserve For the fiscal year ended May 31, 2021 $ 682 $ 2,617 $ 41 $ (2,745) $ 595 For the fiscal year ended May 31, 2022 595 2,573 (31) (2,612) 525 For the fiscal year ended May 31, 2023 525 3,344 (11) (3,309) 549 (1) Amounts included in this column primarily relate to foreign currency translation. NIKE, INC. 96ITEM 16. FORM 10-K SUMMARY None. 2023 FORM 10-K 97 Consent of Independent Registered Public Accounting Firm We hereby consent to the incorporation by reference in the Registration Statements on Form S-3 (No. 333-266267) and Form S-8 (Nos. 033-63995, 333-63581, 333-63583, 333-68864, 333-68886, 333-71660, 333-104822, 333-117059, 333-133360, 333-164248, 333-171647, 333-173727, 333-208900, 333-215439 and 333-266269) of NIK E, Inc. of our report dated July 20, 2023 relating to the financial statements, financial statement schedule and the effectiveness of internal control over financial reporting, which appears in this Form 10-K. /s/ PricewaterhouseCoopers LLP Portland, Oregon July 20, 2023 NIKE, INC. 98SIGNATURES Pursuant to the requirements of Section 13 or 15(d) of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized. NIKE, INC. By: /s/ JOHN J. DONAHOE II John J. Donahoe II President and Chief Executive Officer Date: July 20, 2023 Pursuant to the requirements of the Securities Exchange Act of 1934, as amended, this report has been signed below by the following persons on behalf of the registrant and in the capacities and on the dates indicated. SIGNATURE TITLE DATE PRINCIPAL EXECUTIVE OFFICER AND DIRECTOR: /s/ JOHN J. DONAHOE II John J. Donahoe II President and Chief Executive Officer July 20, 2023 PRINCIPAL FINANCIAL OFFICER: /s/ MATTHEW FRIEND Matthew Friend Executive Vice President and Chief Financial Officer July 20, 2023 PRINCIPAL ACCOUNTING OFFICER: /s/ JOHANNA NIELSEN Johanna Nielsen Vice President and Corporate Controller July 20, 2023 DIRECTORS: /s/ MARK G. PARKER Mark G. Parker Director, Chairman of the Board July 20, 2023 /s/ CATHLEEN A. BENKO Cathleen A. Benko Director July 20, 2023 /s/ TIMOTHY D. COOK Timothy D. Cook Director July 20, 2023 /s/ THASUNDA B. DUCKETT Thasunda B. Duckett Director July 20, 2023 /s/ MÓNICA GIL Mónica Gil Director July 20, 2023 /s/ ALAN B. GRAF, JR. Alan B. Graf, Jr. Director July 20, 2023 /s/ MARIA HENRY Maria Henry Director July 20, 2023 /s/ PETER B. HENRY Peter B. Henry Director July 20, 2023 /s/ TRAVIS A. KNIGHT Travis A. Knight Director July 20, 2023 /s/ MICHELLE A. PELUSO Michelle A. Peluso Director July 20, 2023 /s/ JOHN W. ROGERS, JR. John W. Rogers, Jr. Director July 20, 2023 /s/ ROBERT SWAN Robert Swan Director July 20, 2023 2023 FORM 10-K 99 Cathleen Benko(3) Former Vice Chairman & Managing Principal Deloitte LLP Redwood City, California Timothy Cook(3)(5) Chief Executive Officer Apple Inc. Cupertino, California John Donahoe II(1) President & Chief Executive Officer NIKE, Inc. Beaverton, Oregon Thasunda Duckett(4) President & Chief Executive Officer Teachers Insurance and Annuity Association of America New York, New York Mónica Gil(3) Chief Administrative and Marketing Officer NBCUniversal Telemundo Enterprises Miami, Florida Alan Graf, Jr.(2) Executive Vice President & Chief Financial Officer (Retired) FedEx Corporation Memphis, Tennessee Maria Henry(2) Chief Financial Officer (Retired) Kimberly-Clark Corporation Dallas, Texas Peter Henry(2) Class of 1984 Senior Fellow at Stanford University’s Hoover Institution, Senior Fellow at Stanford’s Freeman Spogli Institute for International Studies and Dean Emeritus of New York University’s Leonard N. Stern School of Business Stanford University Stanford, California Travis Knight(1) President & Chief Executive Officer LAIKA, LLC Hillsboro, Oregon Mark Parker(1) Executive Chairman NIKE, Inc. Beaverton, Oregon Michelle Peluso(4) Executive Vice President & Chief Customer Officer, CVS Health and Co-President, Pharmacy and Consumer Wellness CVS Health Woonsocket, Rhode Island John Rogers, Jr.(4) Co-Chief Executive Officer & Chief Investment Officer Ariel Investments, LLC Chicago, Illinois Robert Swan(2) Operating Partner Andreessen Horowtiz Menlo Park, California (1) Member — Executive Committee (2) Member — Audit & Finance Committee (3) Member — Compensation Committee (4) Member — Corporate Responsibility, Sustainability & Governance Committee (5) Lead Independent DirectorDIRECTORS CORPORATE OFFICERS John Donahoe II President & Chief Executive Officer Mark Parker Executive Chairman Matthew Friend Executive Vice President & Chief Financial Officer Monique Matheson Executive Vice President, Chief Human Resources Officer Ann Miller Executive Vice President, Chief Legal Officer Heidi O’Neill President, Consumer, Product & Brand Craig Williams President, Geographies & Marketplace Mary Hunter Vice President, Corporate Secretary, and Corporate Governance & Securities Counsel Patricia Johnson Vice President, Treasurer & Chief Tax Officer Kelsey Baldwin Senior Counsel, Corporate Governance & Securities, Assistant Secretary Carlos Wilson Assistant General Counsel, Corporate Governance & Securities, Assistant SecretarySDNARBYRAIDISBUS 160 North Washington St. Boston, Massachusetts 02114 One Bowerman Drive Beaverton, Oregon 97005-6453WORLD HEADQUARTERS One Bowerman Drive Beaverton, Oregon 97005-6453 EUROPEAN HEADQUARTERS Colosseum 1 1213 NL Hilversum The Netherlands GREATER CHINA HEADQUARTERS LiNa Building Tower 1, No. 99 Jiangwancheng Road Yangpu District Shanghai, China 200438 SHAREHOLDER INFORMATION INDEPENDENT ACCOUNTANTS PricewaterhouseCoopers LLP 805 SW Broadway, Suite 800 Portland, Oregon 97205 REGISTRAR AND STOCK TRANSFER AGENT Computershare Trust Company, N.A. P.O. Box 505000 Louisville, KY 40233 800-756-8200 Hearing Impaired # TDD: 800-952-9245 Shareholder Information NIKE, Inc. common stock is listed on the New York Stock Exchange under trading symbol ‘NKE.’ Copies of the Company’s Form 10-K or Form 10-Q reports filed with the Securities and Exchange Commission are available from the Company without charge. To request a copy, please call 800-640-8007 or write to NIKE’s Investor Relations Department at NIKE World Headquarters, One Bowerman Drive, Beaverton, Oregon 97005- 6453. Copies are available on the investor relations website, http://investors.nike.com. Dividend Payments Quarterly dividends on NIKE common stock, when declared by the Board of Directors, are paid on or about July 5, October 5, January 5, and April 5. Additional financial information is available at http://investors.nike.com. Other Shareholder Assistance Communications concerning shareholder address changes, stock transfers, changes of ownership, lost stock certificates, payment of dividends, dividend check replacements, duplicate mailings, or other account services should be directed to the Company’s Registrar and Stock Transfer Agent at the address or telephone number above. NIKE, the Swoosh Design, and Just Do It are registered trademarks of NIKE, Inc.S U B S I D I A R Y B R A N D S L O C A T I O N S www-us.computershare.com/investorNIKE, INC. One Bowerman Drive Beaverton, OR 97005-6453 www.nike.com ================================================ FILE: data/q_a.json ================================================ [ { "question": "What does climate change refer to?", "answer": "Climate change refers to significant, long-term changes in the global climate." }, { "question": "What encompasses the planet's overall weather patterns?", "answer": "The term 'global climate' encompasses the planet's overall weather patterns, including temperature, precipitation, and wind patterns, over an extended period." }, { "question": "What activities have significantly contributed to climate change over the past century?", "answer": "Human activities, particularly the burning of fossil fuels and deforestation, have significantly contributed to climate change." }, { "question": "How many cycles of glacial advance and retreat have occurred over the past 650,000 years?", "answer": "There have been seven cycles of glacial advance and retreat over the past 650,000 years." }, { "question": "What marked the beginning of the modern climate era and human civilization?", "answer": "The abrupt end of the last ice age about 11,700 years ago marked the beginning of the modern climate era and human civilization." }, { "question": "What small variations are most climate changes attributed to?", "answer": "Most of these climate changes are attributed to very small variations in Earth's orbit that change the amount of solar energy our planet receives." }, { "question": "What is the primary cause of recent climate change?", "answer": "The primary cause of recent climate change is the increase in greenhouse gases in the atmosphere." }, { "question": "What are some examples of greenhouse gases?", "answer": "Examples of greenhouse gases include carbon dioxide (CO2), methane (CH4), and nitrous oxide (N2O)." }, { "question": "What essential effect do greenhouse gases have on Earth?", "answer": "Greenhouse gases create a 'greenhouse effect,' which is essential for life on Earth as it keeps the planet warm enough to support life." }, { "question": "How has human activity affected the greenhouse effect?", "answer": "Human activities have intensified the natural greenhouse effect, leading to a warmer climate." }, { "question": "What releases large amounts of CO2 into the atmosphere?", "answer": "Burning fossil fuels for energy releases large amounts of CO2 into the atmosphere." }, { "question": "What significant event marked the beginning of a notable increase in fossil fuel consumption?", "answer": "The industrial revolution marked the beginning of a significant increase in fossil fuel consumption." }, { "question": "Which fossil fuel is the most carbon-intensive?", "answer": "Coal is the most carbon-intensive fossil fuel." }, { "question": "What is coal primarily used for, and why is it significant in terms of emissions?", "answer": "Coal is primarily used for electricity generation and is a major source of CO2 emissions." }, { "question": "What are the primary uses of oil?", "answer": "Oil is used primarily for transportation fuels, such as gasoline and diesel." }, { "question": "What environmental issues does the combustion of oil products contribute to?", "answer": "The combustion of oil products releases significant amounts of CO2 and other pollutants, contributing to climate change and air quality issues." }, { "question": "Why is natural gas considered a 'bridge fuel' to a lower-carbon future?", "answer": "Natural gas is considered a 'bridge fuel' because it is the least carbon-intensive fossil fuel." }, { "question": "What is a potent greenhouse gas released during natural gas extraction and use?", "answer": "Methane, a potent greenhouse gas, is released during natural gas extraction and use." }, { "question": "How do forests act as carbon sinks?", "answer": "Forests act as carbon sinks by absorbing CO2 from the atmosphere." }, { "question": "What happens when trees are cut down in terms of carbon?", "answer": "When trees are cut down, the stored carbon is released back into the atmosphere, exacerbating the greenhouse effect." }, { "question": "Why are tropical rainforests important for carbon storage?", "answer": "Tropical rainforests are particularly important for carbon storage because they absorb significant amounts of CO2." }, { "question": "What regions are known for significant tropical deforestation?", "answer": "The Amazon, Congo Basin, and Southeast Asia are known for significant tropical deforestation." }, { "question": "What roles do boreal forests play in sequestering carbon?", "answer": "Boreal forests play a crucial role in sequestering carbon by absorbing CO2 from the atmosphere." }, { "question": "How does agriculture contribute to climate change?", "answer": "Agriculture contributes to climate change through methane emissions from livestock, rice paddies, and the use of synthetic fertilizers." }, { "question": "What is a major source of methane emissions in agriculture?", "answer": "Ruminant animals, such as cows and sheep, produce methane during digestion, which is a major source of methane emissions in agriculture." }, { "question": "How do flooded rice paddies contribute to methane production?", "answer": "Flooded rice paddies create anaerobic conditions that lead to methane production." }, { "question": "What agricultural practice releases nitrous oxide, a potent greenhouse gas?", "answer": "The use of synthetic fertilizers in agriculture releases nitrous oxide, a potent greenhouse gas." }, { "question": "What has been the increase in global temperatures since the late 19th century?", "answer": "Global temperatures have risen by about 1.2 degrees Celsius (2.2 degrees Fahrenheit) since the late 19th century." }, { "question": "What are heatwaves, and how are they changing due to climate change?", "answer": "Heatwaves are becoming more frequent and severe due to climate change, posing risks to human health, agriculture, and infrastructure." }, { "question": "How is climate change altering the timing and length of seasons?", "answer": "Climate change is altering the timing and length of seasons, affecting ecosystems and human activities." }, { "question": "What has been the rise in sea levels over the past century?", "answer": "Sea levels have risen by about 20 centimeters (8 inches) in the past century." }, { "question": "How does polar ice melt contribute to rising sea levels?", "answer": "Warmer temperatures are causing polar ice caps and glaciers to melt, contributing to rising sea levels." }, { "question": "What is the impact of glacial retreat on water supplies?", "answer": "Glacial retreat affects water supplies for millions of people, particularly in regions dependent on glacial meltwater." }, { "question": "What are some of the impacts of rising sea levels on coastal regions?", "answer": "Rising sea levels and increased storm surges are accelerating coastal erosion, threatening homes, infrastructure, and ecosystems." }, { "question": "What extreme weather events are linked to climate change?", "answer": "Climate change is linked to an increase in the frequency and severity of extreme weather events, such as hurricanes, heatwaves, droughts, and heavy rainfall." }, { "question": "How do warmer ocean temperatures affect hurricanes and typhoons?", "answer": "Warmer ocean temperatures can intensify hurricanes and typhoons, leading to more destructive storms." }, { "question": "What is causing more frequent and severe droughts?", "answer": "Increased temperatures and changing precipitation patterns are contributing to more frequent and severe droughts." }, { "question": "How is ocean acidification affecting marine life?", "answer": "Increased CO2 levels in the atmosphere lead to higher concentrations of CO2 in the oceans, causing the water to become more acidic, which can harm marine life." }, { "question": "What is happening to coral reefs due to ocean acidification and warming waters?", "answer": "Ocean acidification and warming waters contribute to coral bleaching and mortality, threatening biodiversity and fisheries." }, { "question": "How do renewable energy sources help mitigate climate change?", "answer": "Transitioning to renewable energy sources, such as wind, solar, and hydroelectric power, reduces greenhouse gas emissions and is sustainable in the long term." }, { "question": "What are the benefits of solar power?", "answer": "Solar power harnesses energy from the sun using photovoltaic cells or solar thermal systems, providing a versatile and scalable solution for reducing carbon emissions." }, { "question": "How does wind power generate electricity?", "answer": "Wind power generates electricity using wind turbines, which is one of the fastest-growing renewable energy sources with significant potential for large-scale deployment." }, { "question": "What is hydroelectric power, and how does it generate electricity?", "answer": "Hydroelectric power generates electricity by harnessing the energy of flowing water, a mature and widely used technology." }, { "question": "How can improving energy efficiency reduce emissions?", "answer": "Improving energy efficiency in buildings, transportation, and industry can significantly reduce greenhouse gas emissions and lower energy costs." } ] ================================================ FILE: evaluation/define_evaluation_metrics.ipynb ================================================ { "cells": [ { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "from langchain_openai import ChatOpenAI \n", "from langchain.chains import LLMChain\n", "from langchain.prompts import PromptTemplate\n", "from langchain.evaluation import load_evaluator\n", "from langchain_core.pydantic_v1 import BaseModel, Field\n", "\n", "# from langchain.evaluation.criteria import {\n", "# CriteriaEvalChain,\n", "# LabeledCriteriaEvalChain\n", "# }\n", "from langchain.embeddings import OpenAIEmbeddings\n", "from langchain.vectorstores import FAISS\n", "# from sklearn.metrics.pairwise import cosine_similarity\n", "import numpy as np\n", "import os\n", "from dotenv import load_dotenv\n", "load_dotenv()\n", "os.environ[\"OPENAI_API_KEY\"] = os.getenv('OPENAI_API_KEY')\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "llm = ChatOpenAI(temperature=0, model_name=\"gpt-4o\", max_tokens=4000)\n" ] }, { "cell_type": "code", "execution_count": 129, "metadata": {}, "outputs": [], "source": [ "class ResultScore(BaseModel):\n", " score: float = Field(..., description=\"The score of the result, ranging from 0 to 1 where 1 is the best possible score.\")\n", " # explanation: str = Field(..., description=\"An extensive explanation of the score.\")\n" ] }, { "cell_type": "code", "execution_count": 104, "metadata": {}, "outputs": [], "source": [ "correctness_prompt = PromptTemplate(\n", "input_variables=[\"question\", \"ground_truth\", \"generated_answer\"],\n", "template=\"\"\"\n", "Question: {question}\n", "Ground Truth: {ground_truth}\n", "Generated Answer: {generated_answer}\n", "\n", "Evaluate the correctness of the generated answer compared to the ground truth.\n", "Score from 0 to 1, where 1 is perfectly correct and 0 is completely incorrect.\n", "any score between 0 and 1 is acceptable and depends on how correct the generated answer is.\n", "\n", "Score:\n", "\"\"\"\n", ")\n", "correctness_chain = correctness_prompt | llm.with_structured_output(ResultScore)\n", "\n", "\n", "def evaluate_correctness(question, ground_truth, generated_answer):\n", " \"\"\"Evaluates the correctness of the generated answer compared to the ground truth.\n", "\n", " Args:\n", " question: The question.\n", " ground_truth: The ground truth answer.\n", " generated_answer: The generated answer.\n", "\n", " Returns:\n", " A float between 0 and 1, where 1 is the best possible score.\n", " \"\"\"\n", " result = correctness_chain.invoke({\"question\": question, \"ground_truth\": ground_truth, \"generated_answer\": generated_answer})\n", " return result.score\n" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [], "source": [ "# test create_correctness_chain\n", "question = \"What is the capital of France and Spain?\"\n", "ground_truth = \"Paris and Barcelona\"\n", "generated_answer = \"Paris\"\n", "score = evaluate_correctness(question, ground_truth, generated_answer)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.5" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "score" ] }, { "cell_type": "code", "execution_count": 105, "metadata": {}, "outputs": [], "source": [ "faithfulness_prompt = PromptTemplate(\n", "input_variables=[\"question\",\"context\", \"generated_answer\"],\n", "template=\"\"\"\n", "Question: {question}\n", "Context: {context}\n", "Generated Answer: {generated_answer}\n", "\n", "Evaluate if the generate answer to the question can be deduced from the context.\n", "Score of 0 or 1, where 1 is perfectly faithful *AND CAN BE DERIVED FROM THE CONTEXT* and 0 otherwise.\n", "you don't mind if the answer is correct, all you care about is if the answer can be deduced from the context.\n", "\n", "example:\n", "Question: What are the capitals of France and Spain?\n", "Context: Paris is the capital of France and Madrid is the capital of Spain.\n", "Generated Answer: Paris\n", "in this case the generated answer is faithful to the context so the score should be *1*.\n", "\n", "example:\n", "Question: What are the capital cities of France and Spain?\n", "Context: London is the capital of France and Barcelona is the capital of Spain.\n", "Generated Answer: London and Barcelona.\n", "in this case the generated answer is faithful to the context so the score should be *1*.\n", "\n", "example:\n", "Question: What are the capital cities of France and Spain?\n", "Context: Paris is the capital of France and Madrid is the capital of Spain.\n", "Generated Answer: Paris.\n", "in this case the generated answer is faithful to the context so the score should be *1*.\n", "\n", "exmaple:\n", "Question: What are the capitals of France and Spain?\n", "Context: London is the capital of France and Madrid is the Capital of Spain.\n", "Generated Answer: Paris and Madrid.\n", "in this case the generated answer is based on the pretrained knowledge of the llm and is not faithful to the context so the score should be *0*.\n", "\n", "example:\n", "Question: What is the capital of France and Spain?\n", "Context: Monkeys like to eat bananas.\n", "Generated Answer: Paris and Madrid.\n", "in this case the generated answer is not based on the context so the score should be *0*.\n", "\n", "example:\n", "Question: What is the capital of France?\n", "Context: Paris.\n", "Generated Answer: Paris.\n", "in this case the context doesn't specify that Paris is the capital of France, and it cannot be deduced from the context, so the score should be *0*.\n", "\n", "\n", "Example:\n", "Question: What is 2+2?\n", "Context: 4.\n", "Generated Answer: 4.\n", "In this case, the context states '4', but it does not provide information to deduce the answer to 'What is 2+2?', so the score should be *0*.\n", "\"\"\"\n", ")\n", "faithfulness_chain = faithfulness_prompt | llm.with_structured_output(ResultScore)" ] }, { "cell_type": "code", "execution_count": 83, "metadata": {}, "outputs": [], "source": [ "def evaluate_faithfulness(question, context, generated_answer):\n", " \"\"\"Evaluates if the generate answer to the question can be deduced from the context.\n", "\n", " Args:\n", " question: The question.\n", " context: The context.\n", " generated_answer: The generated answer.\n", "\n", " Returns:\n", " A float between 0 and 1, where 1 is the best possible score.\n", " \"\"\"\n", " result = faithfulness_chain.invoke({\"question\": question, \"context\": context, \"generated_answer\": generated_answer})\n", " return result.score, result.explanation" ] }, { "cell_type": "code", "execution_count": 86, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.0\n", "The context states '6', but it does not provide information to deduce the answer to 'What is 3+3?'. The answer is correct, but it cannot be derived from the context.\n" ] } ], "source": [ "# test create_faithfulness_chain\n", "question = \"what is 3+3?\"\n", "context = \"6\"\n", "generated_answer = \"6\"\n", "score, explanation = evaluate_faithfulness(question, context, generated_answer)\n", "print(score)\n", "print(explanation)" ] }, { "cell_type": "code", "execution_count": 130, "metadata": {}, "outputs": [], "source": [ "from langchain import PromptTemplate\n", "\n", "relevancy_score_prompt = PromptTemplate(\n", " input_variables=[\"question\", \"contexts\"],\n", " template=\"\"\"\n", "Q: {question}\n", "Docs: {contexts}\n", "\n", "Score each doc's relevance:\n", "0.00 - Irrelevant: No relation to the question\n", "0.33 - Somewhat relevant: Contains related keywords or concepts\n", "0.66 - Relevant: Partially answers or strongly implies the answer\n", "1.00 - Highly relevant: Directly and fully answers the question\n", "\n", "Consider: Relevance, Directness, Completeness, Accuracy\n", "\n", "Final Score: [Average of all scores]\n", "\"\"\"\n", ")\n", "ratio_of_relevant_docs_chain = ratio_of_relevant_docs_prompt | llm.with_structured_output(ResultScore)" ] }, { "cell_type": "code", "execution_count": 131, "metadata": {}, "outputs": [], "source": [ "def evaluate_ratio_of_relevant_docs(question, contexts):\n", " \"\"\"Evaluates the ratio of relevant documents in the contexts to the question.\n", "\n", " Args:\n", " question: The question.\n", " contexts: A list of documents.\n", "\n", " Returns:\n", " A float between 0 and 1, where 1 is the best possible score.\n", " \"\"\"\n", " result = ratio_of_relevant_docs_chain.invoke({\"question\": question, \"contexts\": contexts})\n", " return result.score" ] }, { "cell_type": "code", "execution_count": 132, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1.0\n" ] } ], "source": [ "# test create_ratio_of_relevant_docs_chain\n", "question = \"What is the capital of France?\"\n", "contexts = [\"Paris.\", \"i was traveling in France.\"]\n", "score = evaluate_ratio_of_relevant_docs(question, contexts)\n", "# score, explanation = evaluate_ratio_of_relevant_docs(question, contexts)\n", "print(score)\n", "# print(explanation)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=evaluation--define-evaluation-metrics)" ] } ], "metadata": { "colab": { "name": "define_evaluation_metrics.ipynb", "private_outputs": true, "provenance": [] }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: evaluation/evaluation_deep_eval.ipynb ================================================ { "cells": [ { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "from deepeval import evaluate\n", "from deepeval.metrics import GEval, FaithfulnessMetric, ContextualRelevancyMetric\n", "from deepeval.test_case import LLMTestCase, LLMTestCaseParams" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Test Correctness" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "correctness_metric = GEval(\n", " name=\"Correctness\",\n", " model=\"gpt-4o\",\n", " evaluation_params=[\n", " LLMTestCaseParams.EXPECTED_OUTPUT,\n", " LLMTestCaseParams.ACTUAL_OUTPUT],\n", " evaluation_steps=[\n", " \"Determine whether the actual output is factually correct based on the expected output.\"\n", " ],\n", "\n", ")\n", "\n", "gt_answer = \"Madrid is the capital of Spain.\"\n", "pred_answer = \"MadriD.\"\n", "\n", "test_case_correctness = LLMTestCase(\n", " input=\"What is the capital of Spain?\",\n", " expected_output=gt_answer,\n", " actual_output=pred_answer,\n", ")\n", "\n", "correctness_metric.measure(test_case_correctness)\n", "print(correctness_metric.score)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Test faithfulness" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "question = \"what is 3+3?\"\n", "context = [\"6\"]\n", "generated_answer = \"6\"\n", "\n", "faithfulness_metric = FaithfulnessMetric(\n", " threshold=0.7,\n", " model=\"gpt-4\",\n", " include_reason=False\n", ")\n", "\n", "test_case = LLMTestCase(\n", " input = question,\n", " actual_output=generated_answer,\n", " retrieval_context=context\n", "\n", ")\n", "\n", "faithfulness_metric.measure(test_case)\n", "print(faithfulness_metric.score)\n", "print(faithfulness_metric.reason)\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Test contextual relevancy " ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "actual_output = \"then go somewhere else.\"\n", "retrieval_context = [\"this is a test context\",\"mike is a cat\",\"if the shoes don't fit, then go somewhere else.\"]\n", "gt_answer = \"if the shoes don't fit, then go somewhere else.\"\n", "\n", "relevance_metric = ContextualRelevancyMetric(\n", " threshold=1,\n", " model=\"gpt-4\",\n", " include_reason=True\n", ")\n", "relevance_test_case = LLMTestCase(\n", " input=\"What if these shoes don't fit?\",\n", " actual_output=actual_output,\n", " retrieval_context=retrieval_context,\n", " expected_output=gt_answer,\n", "\n", ")\n", "\n", "relevance_metric.measure(relevance_test_case)\n", "print(relevance_metric.score)\n", "print(relevance_metric.reason)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [], "source": [ "new_test_case = LLMTestCase(\n", " input=\"What is the capital of Spain?\",\n", " expected_output=\"Madrid is the capital of Spain.\",\n", " actual_output=\"MadriD.\",\n", " retrieval_context=[\"Madrid is the capital of Spain.\"]\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Test two different cases together with several metrics together" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "evaluate(\n", " test_cases=[relevance_test_case, new_test_case],\n", " metrics=[correctness_metric, faithfulness_metric, relevance_metric]\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Funcion to create multiple LLMTestCases based on four lists: \n", "* Questions\n", "* Ground Truth Answers\n", "* Generated Answers\n", "* Retrieved Documents - Each element is a list" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def create_deep_eval_test_cases(questions, gt_answers, generated_answers, retrieved_documents):\n", " return [\n", " LLMTestCase(\n", " input=question,\n", " expected_output=gt_answer,\n", " actual_output=generated_answer,\n", " retrieval_context=retrieved_document\n", " )\n", " for question, gt_answer, generated_answer, retrieved_document in zip(\n", " questions, gt_answers, generated_answers, retrieved_documents\n", " )\n", " ]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=evaluation--evaluation-deep-eval)" ] } ], "metadata": { "colab": { "name": "evaluation_deep_eval.ipynb", "private_outputs": true, "provenance": [] }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.0" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: evaluation/evaluation_grouse.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\"grouse\"\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Tutorial" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Import libraries" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import os\n", "\n", "import nest_asyncio\n", "\n", "from grouse import (\n", " EvaluationSample,\n", " GroundedQAEvaluator,\n", " meta_evaluate_pipeline,\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Avoid nested asyncio loops inside notebooks (this line is not needed if you run the code in a Python script)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "nest_asyncio.apply()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Setup your API key" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For this tutorial, you will need access to the OpenAI API and get an OpenAI API key. You can get one [here](https://platform.openai.com/api-keys)." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "os.environ[\"OPENAI_API_KEY\"] = input(\"Add your OpenAI API key:\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Initialize the evaluator\n", "\n", "The default model used is [GPT-4](https://platform.openai.com/docs/models/gpt-4-turbo-and-gpt-4). Prompts are adapted to this model, so if you want to have the best results, keep using the default model." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "evaluator = GroundedQAEvaluator()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Evaluate a good answer\n", "\n", "An LLM has given a good answer to a question related to the Eiffel Tower, given some contexts from the [Eiffel Tower Wikipedia](https://en.wikipedia.org/wiki/Eiffel_Tower) page. Let's evaluate the answer and check that everything is okay." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "good_sample = EvaluationSample(\n", " input=\"Where is the Eiffel Tower located?\",\n", " actual_output=\"The Eiffel Tower stands in the Champs de Mars in Paris.[1]\",\n", " expected_output=\"In the Champs de Mars in Paris. [1]\",\n", " references=[\n", " \"The Eiffel Tower is a wrought-iron lattice tower on the Champ de Mars in Paris, France\"\n", " ]\n", ")\n", "\n", "result = evaluator.evaluate(eval_samples=[good_sample]).evaluations[0]\n", "\n", "print(\"Answer Relevancy (1 to 5):\", result.answer_relevancy.answer_relevancy)\n", "print(\"Answer Relevancy (1 to 5):\", result.answer_relevancy.answer_relevancy_justification)\n", "print(\"Completeness (1 to 5):\", result.completeness.completeness)\n", "print(\"Completeness (1 to 5):\", result.completeness.completeness_justification)\n", "print(\"Faithfulness (0 or 1):\", result.faithfulness.faithfulness)\n", "print(\"Faithfulness (0 or 1):\", result.faithfulness.faithfulness_justification)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### How does it behave with an irrelevant answer?" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "irrelevant_sample = EvaluationSample(\n", " input=\"Where is the Eiffel Tower located?\",\n", " actual_output=\"The Eiffel Tower is mainly made of puddle iron.[2]\",\n", " expected_output=\"In the Champs de Mars in Paris.[1]\",\n", " references=[\n", " \"The Eiffel Tower is a wrought-iron lattice tower on the Champ de Mars in Paris, France\",\n", " \"The puddle iron (wrought iron) of the Eiffel Tower weighs 7,300 tonnes,[70] and the addition of lifts, shops and antennae have brought the total weight to approximately 10,100 tonnes.\"\n", " ]\n", ")\n", "\n", "result = evaluator.evaluate(eval_samples=[irrelevant_sample]).evaluations[0]\n", "\n", "print(\"Answer Relevancy (1 to 5):\", result.answer_relevancy.answer_relevancy)\n", "print(\"Justification:\", result.answer_relevancy.answer_relevancy_justification)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Evaluation of an incomplete sample" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "incomplete_sample = EvaluationSample(\n", " input=\"Who critized the Eiffel Tower project in 1889?\",\n", " actual_output=(\n", " \"The tower was critized by those who did not believe it was feasible and some artists.[1]\"\n", " ),\n", " expected_output=(\n", " \"The tower was critized by those who did not believe it was feasible and those who objected on artistic grounds.[1]\"\n", " \"An artist committee was created to protest againt the construction of the tower, led by the prominent architect \"\n", " \"Charles Garnier and including some of the most important figures of the arts, \"\n", " \"such as William-Adolphe Bouguereau, Guy de Maupassant, Charles Gounod and Jules Massenet. [2]\"\n", " ),\n", " references=[\n", " \"The proposed tower had been a subject of controversy, drawing criticism from those who did not believe it was feasible and those who objected on artistic grounds.\",\n", " (\n", " \"It came to a head as work began at the Champ de Mars: a \\\"Committee of Three Hundred\\\" \"\n", " \"(one member for each metre of the tower's height) was formed, led by the prominent architect \"\n", " \"Charles Garnier and including some of the most important figures of the arts, \"\n", " \"such as William-Adolphe Bouguereau, Guy de Maupassant, Charles Gounod and Jules Massenet.\"\n", " ),\n", " \"A petition called \\\"Artists against the Eiffel Tower\\\" was sent to the Minister of Works and Commissioner for the Exposition, Adolphe Alphand, and it was published by Le Temps on 14 February 1887\"\n", " ]\n", ")\n", "\n", "result = evaluator.evaluate(eval_samples=[incomplete_sample]).evaluations[0]\n", "\n", "print(\"Completeness (1 to 5):\", result.completeness.completeness)\n", "print(\"Justification:\", result.completeness.completeness_justification)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Evaluation of an unfaithful sample" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "unfaithful_sample = EvaluationSample(\n", " input=\"Where is the Eiffel Tower located?\",\n", " actual_output=\"The Eiffel Tower is located at Rue Rabelais in Paris.[1][2]\",\n", " expected_output=\"In the Champs de Mars in Paris.[1]\",\n", " references=[\n", " \"The Eiffel Tower is a wrought-iron lattice tower on the Champ de Mars in Paris, France\",\n", " \"Gustave Eiffel died in his appartment at Rue Rabelais in Paris.\"\n", " ]\n", ")\n", "\n", "result = evaluator.evaluate(eval_samples=[unfaithful_sample]).evaluations[0]\n", "\n", "print(\"Faithfulness (0 or 1):\", result.faithfulness.faithfulness)\n", "print(\"Justification:\", result.faithfulness.faithfulness_justification)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Evaluation of information utility in case there is no answer to the question in the references" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "useful_sample = EvaluationSample(\n", " input=\"Who critized the Eiffel Tower project in 1889?\",\n", " actual_output=(\n", " \"No document seems to precisely answer your question.\"\n", " \"However, it is mentioned that a petition against tht Eiffel Tower construciton was sent \"\n", " \"to the Minister of Works and Commissioner for the Exposition [1]\"\n", " ),\n", " expected_output=(\n", " \"No document seems to precisely answer your question.\"\n", " \"However, it is worth noting that a petition against tht Eiffel Tower construciton was sent \"\n", " \"to the Minister of Works and Commissioner for the Exposition [1]\"\n", " ),\n", " references=[\n", " \"A petition against the tower was sent to the Minister of Works and Commissioner for the Exposition, Adolphe Alphand, and it was published by Le Temps on 14 February 1887\"\n", " ]\n", ")\n", "\n", "result = evaluator.evaluate(eval_samples=[useful_sample]).evaluations[0]\n", "\n", "print(\"Usefulness (0 or 1):\", result.usefulness.usefulness)\n", "print(\"Justification:\", result.usefulness.usefulness_justification)\n", "print(\"Positive Acceptance:\", result.positive_acceptance)\n", "print(\"Negative Rejection:\", result.negative_rejection)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Note that all the results are cached and we can compute the global statistics on all the samples" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "evaluation_report = evaluator.evaluate(eval_samples=[\n", " good_sample,\n", " irrelevant_sample,\n", " incomplete_sample,\n", " unfaithful_sample,\n", " useful_sample,\n", "]).report\n", "print(\"Average answer relevancy: \", evaluation_report.answer_relevancy)\n", "print(\"Average completeness: \", evaluation_report.completeness)\n", "print(\"Average faithfulness: \", evaluation_report.faithfulness)\n", "print(\"Average usefulness: \", evaluation_report.usefulness)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Create your own Judge LLM\n", "\n", "Since GPT-4 is expensive, let's create a new evaluator using gpt-4o-mini. For that, we need to adapt the evaluation prompt to the model by using the train set of the [GroUSE unit tests](https://huggingface.co/datasets/illuin/grouse).\n", "Make sure that the output follows the same format as described in the prompts below." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Answer Relevancy prompt" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "relevancy_evaluation_prompt = \"\"\"# Task\n", "\n", "Task: Grounded Question Answering\n", "Based solely on the content of the references, the objective is to generate a response to the user's query. Each statement must be followed by the reference of the source passage, in the format [i] where i is the number of the reference. If no passage seems relevant, the answer should begin with \"No document seems to precisely answer your question\" and may be supplemented with related sourced information.\n", "\n", "# Instructions\n", "\n", "I will provide you with two answers, numbered 1 and 2, each containing a response to the user request.\n", "I want you to assign to each answer a relevancy grade between 1 and 5:\n", "- Answer relevancy evaluates if the content of the answer accurately responds to the user's question.\n", "- The truthfulness of the information in the answer does not impact relevancy: even if information that appears false is contained in the answer, as long as this information is related to the request, then relevancy should not decrease. Remember that this information could come from references mentioning imaginary content that you are unaware of: the only thing to evaluate to assign the relevancy grade is therefore the adequacy between the information in the answer and the request, NOT their truthfulness.\n", "- The absence of information in the answer does not impact relevancy, only the information contained in the answer is evaluated.\n", "- Answer relevancy cannot be evaluated if the answer mentions that no document responds to the user request, it is then `null`, regardless of whether it contains other information or not.\n", "\n", "Rating scale:\n", "null - The answer asserts that no document precisely responds to the user request. Even if it provides additional information, whether appropriate or not, the relevancy remains `null`.\n", "5 - The answer has excellent relevancy. All information provided in the answer is in line with the question and precisely answers the user request.\n", "4 - The answer achieves good relevancy by providing relevant information to answer the user question. Some information indicated does not exactly answer the question, but remains in line with the request.\n", "3 - The answer has average relevancy, it contains information that allows responding to the user request, but it also contains superfluous information, which was not necessary to answer the request.\n", "2 - The answer shows low relevancy, with some elements related to the request, but the majority of the content is not in line with the question asked.\n", "1 - The answer has very low relevancy, not answering the user's question at all. The content is largely inappropriate or off-topic, delivering no useful information for the request.\n", "\n", "Before assigning each grade, you will check that the answer does not contain \"No document responds...\", if this is the case you must put a grade of `null`. If this is not the case, you will then analyze the adequacy between the request and the information contained in the answer.\n", "Your response should be in JSON format, respecting the following format:\n", "{\n", " \"answer_1\": {\n", " \"answer_affirms_no_document_answers\": X,\n", " \"answer_relevancy_justification\": \"...\",\n", " \"answer_relevancy\": Y\n", " },\n", " \"answer_2\": {\n", " \"answer_affirms_no_document_answers\": X,\n", " \"answer_relevancy_justification\": \"...\",\n", " \"answer_relevancy\": Y\n", " }\n", "}\n", "Where \"...\" is a string, X is a boolean, and Y is an integer between 1 and 5 or `null`.\n", "\n", "# Sample\n", "\n", "User request: {{ input }}\n", "\n", "# To evaluate\n", "\n", "Answer 1: {{ expected_output }}\n", "Answer 2: {{ actual_output }}\"\"\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Completeness prompt" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "completeness_evaluation_prompt = \"\"\"# Task\n", "\n", "Task: Grounded Question Answering\n", "Based solely on the content of the references, the objective is to generate a response to the user's query. Each statement must be followed by the reference of the source passage, in the format [i] where i is the number of the reference. If no passage seems relevant, the answer should begin with \"No document seems to precisely answer your question\" and may be supplemented with related sourced information.\n", "\n", "# Instructions\n", "\n", "I will provide you with two answers, numbered 1 and 2, each containing a response to the user request.\n", "I want you to assign to each answer a completeness grade between 1 and 5:\n", "- The only condition for an answer to be complete is the presence in it of at least all the information from the references that are relevant to the question asked.\n", "- The presence of unrelated information in the answer does not impact completeness.\n", "- The presence of information in the answer not from the references does not impact completeness.\n", "- Possible errors in the sources citing the references do not impact completeness.\n", "- Completeness cannot be evaluated if the references contain no information that can precisely answer the user request, in which case the grade takes the value `null`.\n", "\n", "Rating scale:\n", "null - The references contained no relevant information to precisely answer the user's question. In this case, there is no need to read the content of the answer to know that the grade is `null`.\n", "5 - The answer is very complete, it contains all the relevant information from the references. No essential information is omitted, ensuring complete coverage of the question asked.\n", "4 - The answer covers most of the relevant information in depth. It integrates the references satisfactorily, covering the majority of key points. Some details may be missing, but overall, the answer is substantial.\n", "3 - The answer reasonably addresses a number of relevant aspects. It integrates part of the necessary information from the references. However, gaps remain, impacting the overall completeness.\n", "2 - The answer only covers a minimal part of the relevant information. It misses several important information from the references.\n", "1 - The answer covers none of the relevant information, all relevant information from the references has been omitted in the answer.\n", "\n", "Before assigning each grade, you will always start by analyzing the information found in the references that are relevant to the user request. If there is no relevant information in the references, completeness must be `null`. If there are relevant information in the references, you will analyze which portion of this information is present or absent in the answers to evaluate the completeness grade. Your response should be in JSON format, respecting the following format:\n", "{\n", " \"answer_1\": {\n", " \"completeness_justification\": \"...\",\n", " \"completeness\": X\n", " },\n", " \"answer_2\": {\n", " \"completeness_justification\": \"...\",\n", " \"completeness\": X\n", " }\n", "}\n", "Where \"...\" is a string, and X is an integer between 1 and 5 or `null`.\n", "\n", "# SAMPLE\n", "\n", "List of references :\n", "{%- for context in contexts %}\n", "Reference {{ loop.index }}: {{ context }}\n", "{%- endfor %}\n", "User request: {{ input }}\n", "\n", "# To evaluate\n", "\n", "Answer 1: {{ expected_output }}\n", "Answer 2: {{ actual_output }}\"\"\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Faithfulness prompt" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "faithfulness_evaluation_prompt = \"\"\"# Task\n", "\n", "Task: Grounded Question Answering\n", "Based solely on the content of the references, the objective is to generate a response to the user's query. Each statement must be followed by the reference of the source passage, in the format [i] where i is the number of the reference. If no passage seems relevant, the answer should begin with \"No document seems to precisely answer your question\" and may be supplemented with related sourced information.\n", "\n", "# Instructions\n", "\n", "I will provide you with two answers, numbered 1 and 2, each containing a response to the user request.\n", "I want you to assign to each answer a boolean faithfulness grade. An answer is faithful if:\n", "- Each statement made by the answer is followed by a source indicating the reference from which it is drawn.\n", "- The information preceding the source is indeed from the corresponding reference.\n", "- The information preceding the source is in agreement with the corresponding reference, and does not assert facts different from those indicated in the reference.\n", "In all other cases, the response is considered non-faithful.\n", "Faithfulness is also considered non-measurable if the answer asserts that no document responds to the question, and it does not provide any related information, it is then `null`.\n", "\n", "Rating scale:\n", "null - The answer asserts that no document responds to the question, and does not provide any related information.\n", "1 - All sentences in the answer cite their sources, and are in agreement with the cited sources.\n", "0 - At least one sentence in the response does not cite its sources, or cites a wrong source, or modifies the content from the references, or asserts something that is not supported by the cited references.\n", "\n", "Before assigning each grade, you will start by verifying that the answer does not only assert \"No document responds...\", without any other information. If this is the case, then faithfulness must be `null`. Otherwise, I want you to analyze by explaining for each sentence, one after the other, if 1) a reference follows the sentence, 2) the reference following the sentence is correct, and 3) if the sentence does not distort or modify the content of the references. Your response should be in JSON format, respecting the following format:\n", "{\n", " \"answer_1\": {\n", " \"answer_only_asserts_no_document_answers\": X,\n", " \"content_analysis_sentence_by_sentence\": [\n", " {\n", " \"sentence\": \"...\",\n", " \"criterion_1\": \"...\",\n", " \"criterion_2\": \"...\",\n", " \"criterion_3\": \"...\"\n", " },\n", " ...\n", " ],\n", " \"faithfulness_justification\": \"...\",\n", " \"faithfulness\": Y\n", " },\n", " \"answer_2\": {\n", " \"answer_only_asserts_no_document_answers\": X,\n", " \"content_analysis_sentence_by_sentence\": [\n", " {\n", " \"sentence\": \"...\",\n", " \"criterion_1\": \"...\",\n", " \"criterion_2\": \"...\",\n", " \"criterion_3\": \"...\"\n", " },\n", " ...\n", " ],\n", " \"faithfulness_justification\": \"...\",\n", " \"faithfulness\": Y\n", " }\n", "}\n", "Where \"...\" is a string, X is a boolean, and Y is either a boolean or `null`.\n", "\n", "# Sample\n", "\n", "List of references :\n", "{%- for context in contexts %}\n", "Reference {{ loop.index }}: {{ context }}\n", "{%- endfor %}\n", "\n", "# To evaluate\n", "\n", "Answer 1: {{ expected_output }}\n", "Answer 2: {{ actual_output }}\"\"\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Usefulness Prompt" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "usefulness_evaluation_prompt = \"\"\"# Task\n", "\n", "Task: Grounded Question Answering\n", "Based solely on the content of the references, the objective is to generate a response to the user's query. Each statement must be followed by the reference of the source passage, in the format [i] where i is the number of the reference. If no passage seems relevant, the answer should begin with \"No document seems to precisely answer your question\" and may be supplemented with related sourced information.\n", "\n", "# Instructions\n", "\n", "I will provide you with two answers, numbered 1 and 2, each containing a response to the user request.\n", "I want you to assign to each answer a usefulness grade of 0 or 1:\n", "- Usefulness is only evaluated when the answer says that no document precisely answers the user's question, but it still provides information related to the question.\n", "- Usefulness measures how interesting the related information is to know for the user, given that there is no answer in the references.\n", "- If the answer responds to the user request, usefulness must be `null`.\n", "- If the answer indicates that no document responds to the user request, without adding other information, usefulness must be `null`.\n", "\n", "Rating scale:\n", "null - (The answer responds to the user request) OR (the answer does not answer the user's question AND does not provide any related information).\n", "1 - The related information is generally related to the question and adds value to the general understanding of the topic.\n", "0 - The related information is completely off-topic with respect to the question asked.\n", "\n", "Before assigning each grade, you will start by verifying that the answer indeed asserts \"No document responds...\", then you will check that the answer contains related information in addition to this assertion. If one of these two conditions is `false` then usefulness must be `null`.\n", "If both conditions are indeed true, then you will analyze the usefulness of having added this related information to evaluate the usefulness grade. Your response should be in JSON format, respecting the following format:\n", "{\n", " \"answer_1\": {\n", " \"answer_affirms_no_document_answers\": X,\n", " \"answer_contains_related_information\": X,\n", " \"usefulness_justification\": \"...\",\n", " \"usefulness\": Y\n", " },\n", " \"answer_2\": {\n", " \"answer_affirms_no_document_answers\": X,\n", " \"answer_contains_related_information\": X,\n", " \"usefulness_justification\": \"...\",\n", " \"usefulness\": Y\n", " }\n", "}\n", "Where \"...\" is a string, X is a boolean, and Y is an integer that is 0 or 1 or `null`.\n", "\n", "# Sample\n", "\n", "User request: {{ input }}\n", "\n", "# To evaluate\n", "\n", "Answer 1: {{ expected_output }}\n", "Answer 2: {{ actual_output }}\"\"\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Save prompts to use them later" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "prompts_path = \"gpt4o_mini_prompts\"\n", "os.makedirs(prompts_path, exist_ok=True)\n", "\n", "with open(os.path.join(prompts_path, \"answer_relevancy.txt.jinja\"), \"w\") as file:\n", " file.write(relevancy_evaluation_prompt)\n", "with open(os.path.join(prompts_path, \"completeness.txt.jinja\"), \"w\") as file:\n", " file.write(completeness_evaluation_prompt)\n", "with open(os.path.join(prompts_path, \"faithfulness.txt.jinja\"), \"w\") as file:\n", " file.write(faithfulness_evaluation_prompt)\n", "with open(os.path.join(prompts_path, \"usefulness.txt.jinja\"), \"w\") as file:\n", " file.write(usefulness_evaluation_prompt)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Check results on train set" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "meta_evaluations = meta_evaluate_pipeline(\"gpt-4o-mini\", prompts_path, train_set=True)\n", "print(\"Aggregated metrics\")\n", "print(meta_evaluations.report)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It is an encouraging beginning. But, we can iterate on the prompts above to try to have better scores with GPT-4o-mini. Still, it will be difficult to have a performance as good as GPT-4." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Once you are happy with your prompts, you can evaluate the Judge model on the test set" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "meta_evaluations = meta_evaluate_pipeline(\"gpt-4o-mini\", prompts_path, train_set=False)\n", "meta_evaluations.report" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Limitations" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Unit tests can help you assess the limits of your judge LLM on edge cases but don't guarantee that your judge LLM will be perfect. Be cautious when analysing the results." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## References" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "```latex\n", "@misc{muller2024grousebenchmarkevaluateevaluators,\n", " title={GroUSE: A Benchmark to Evaluate Evaluators in Grounded Question Answering}, \n", " author={Sacha Muller and António Loison and Bilel Omrani and Gautier Viaud},\n", " year={2024},\n", " eprint={2409.06595},\n", " archivePrefix={arXiv},\n", " primaryClass={cs.CL},\n", " url={https://arxiv.org/abs/2409.06595}, \n", "}\n", "```" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![](https://europe-west1-rag-techniques-views-tracker.cloudfunctions.net/rag-techniques-tracker?notebook=evaluation--evaluation-grouse)" ] } ], "metadata": { "colab": { "name": "evaluation_grouse.ipynb", "private_outputs": true, "provenance": [] }, "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.1" } }, "nbformat": 4, "nbformat_minor": 2 } ================================================ FILE: evaluation/evalute_rag.py ================================================ """ RAG Evaluation Script This script evaluates the performance of a Retrieval-Augmented Generation (RAG) system using various metrics from the deepeval library. Dependencies: - deepeval - langchain_openai - json Custom modules: - helper_functions (for RAG-specific operations) """ import json from typing import List, Tuple, Dict, Any from deepeval import evaluate from deepeval.metrics import GEval, FaithfulnessMetric, ContextualRelevancyMetric from deepeval.test_case import LLMTestCase, LLMTestCaseParams from langchain_openai import ChatOpenAI from langchain_core.prompts import PromptTemplate from langchain_core.output_parsers import StrOutputParser # 09/15/24 kimmeyh Added path where helper functions is located to the path # Add the parent directory to the path since we work with notebooks import sys import os current_dir = os.path.dirname(os.path.abspath(__file__)) parent_dir = os.path.dirname(current_dir) sys.path.append(parent_dir) from helper_functions import ( create_question_answer_from_context_chain, answer_question_from_context, retrieve_context_per_question ) def create_deep_eval_test_cases( questions: List[str], gt_answers: List[str], generated_answers: List[str], retrieved_documents: List[str] ) -> List[LLMTestCase]: """ Create a list of LLMTestCase objects for evaluation. Args: questions (List[str]): List of input questions. gt_answers (List[str]): List of ground truth answers. generated_answers (List[str]): List of generated answers. retrieved_documents (List[str]): List of retrieved documents. Returns: List[LLMTestCase]: List of LLMTestCase objects. """ return [ LLMTestCase( input=question, expected_output=gt_answer, actual_output=generated_answer, retrieval_context=retrieved_document ) for question, gt_answer, generated_answer, retrieved_document in zip( questions, gt_answers, generated_answers, retrieved_documents ) ] # Define evaluation metrics correctness_metric = GEval( name="Correctness", model="gpt-4-turbo", evaluation_params=[ LLMTestCaseParams.EXPECTED_OUTPUT, LLMTestCaseParams.ACTUAL_OUTPUT ], evaluation_steps=[ "Determine whether the actual output is factually correct based on the expected output." ], ) faithfulness_metric = FaithfulnessMetric( threshold=0.7, model="gpt-4-turbo", include_reason=False ) relevance_metric = ContextualRelevancyMetric( threshold=1, model="gpt-4-turbo", include_reason=True ) def evaluate_rag(retriever, num_questions: int = 5) -> Dict[str, Any]: """ Evaluates a RAG system using predefined test questions and metrics. Args: retriever: The retriever component to evaluate num_questions: Number of test questions to generate Returns: Dict containing evaluation metrics """ # Initialize LLM llm = ChatOpenAI(temperature=0, model_name="gpt-4-turbo") # Create evaluation prompt eval_prompt = PromptTemplate.from_template(""" Evaluate the following retrieval results for the question. Question: {question} Retrieved Context: {context} Rate on a scale of 1-5 (5 being best) for: 1. Relevance: How relevant is the retrieved information to the question? 2. Completeness: Does the context contain all necessary information? 3. Conciseness: Is the retrieved context focused and free of irrelevant information? Provide ratings in JSON format: """) # Create evaluation chain eval_chain = ( eval_prompt | llm | StrOutputParser() ) # Generate test questions question_gen_prompt = PromptTemplate.from_template( "Generate {num_questions} diverse test questions about climate change:" ) question_chain = question_gen_prompt | llm | StrOutputParser() questions = question_chain.invoke({"num_questions": num_questions}).split("\n") # Evaluate each question results = [] for question in questions: # Get retrieval results context = retriever.get_relevant_documents(question) context_text = "\n".join([doc.page_content for doc in context]) # Evaluate results eval_result = eval_chain.invoke({ "question": question, "context": context_text }) results.append(eval_result) return { "questions": questions, "results": results, "average_scores": calculate_average_scores(results) } def calculate_average_scores(results: List[Dict]) -> Dict[str, float]: """Calculate average scores across all evaluation results.""" # Implementation depends on the exact format of your results pass if __name__ == "__main__": # Add any necessary setup or configuration here # Example: evaluate_rag(your_chunks_query_retriever_function) pass ================================================ FILE: helper_functions.py ================================================ from langchain_community.document_loaders import PyPDFLoader from langchain_text_splitters import RecursiveCharacterTextSplitter from langchain_openai import OpenAIEmbeddings from langchain_community.vectorstores import FAISS from pydantic import BaseModel, Field from langchain_core.prompts import PromptTemplate from openai import RateLimitError from typing import List from rank_bm25 import BM25Okapi import fitz import asyncio import random import textwrap import numpy as np from enum import Enum def replace_t_with_space(list_of_documents): """ Replaces all tab characters ('\t') with spaces in the page content of each document Args: list_of_documents: A list of document objects, each with a 'page_content' attribute. Returns: The modified list of documents with tab characters replaced by spaces. """ for doc in list_of_documents: doc.page_content = doc.page_content.replace('\t', ' ') # Replace tabs with spaces return list_of_documents def text_wrap(text, width=120): """ Wraps the input text to the specified width. Args: text (str): The input text to wrap. width (int): The width at which to wrap the text. Returns: str: The wrapped text. """ return textwrap.fill(text, width=width) def encode_pdf(path, chunk_size=1000, chunk_overlap=200): """ Encodes a PDF book into a vector store using OpenAI embeddings. Args: path: The path to the PDF file. chunk_size: The desired size of each text chunk. chunk_overlap: The amount of overlap between consecutive chunks. Returns: A FAISS vector store containing the encoded book content. """ # Load PDF documents loader = PyPDFLoader(path) documents = loader.load() # Split documents into chunks text_splitter = RecursiveCharacterTextSplitter( chunk_size=chunk_size, chunk_overlap=chunk_overlap, length_function=len ) texts = text_splitter.split_documents(documents) cleaned_texts = replace_t_with_space(texts) # Create embeddings and vector store embeddings = OpenAIEmbeddings() vectorstore = FAISS.from_documents(cleaned_texts, embeddings) return vectorstore def encode_from_string(content, chunk_size=1000, chunk_overlap=200): """ Encodes a string into a vector store using OpenAI embeddings. Args: content (str): The text content to be encoded. chunk_size (int): The size of each chunk of text. chunk_overlap (int): The overlap between chunks. Returns: FAISS: A vector store containing the encoded content. Raises: ValueError: If the input content is not valid. RuntimeError: If there is an error during the encoding process. """ if not isinstance(content, str) or not content.strip(): raise ValueError("Content must be a non-empty string.") if not isinstance(chunk_size, int) or chunk_size <= 0: raise ValueError("chunk_size must be a positive integer.") if not isinstance(chunk_overlap, int) or chunk_overlap < 0: raise ValueError("chunk_overlap must be a non-negative integer.") try: # Split the content into chunks text_splitter = RecursiveCharacterTextSplitter( chunk_size=chunk_size, chunk_overlap=chunk_overlap, length_function=len, is_separator_regex=False, ) chunks = text_splitter.create_documents([content]) # Assign metadata to each chunk for chunk in chunks: chunk.metadata['relevance_score'] = 1.0 # Generate embeddings and create the vector store embeddings = OpenAIEmbeddings() vectorstore = FAISS.from_documents(chunks, embeddings) except Exception as e: raise RuntimeError(f"An error occurred during the encoding process: {str(e)}") return vectorstore def retrieve_context_per_question(question, chunks_query_retriever): """ Retrieves relevant context and unique URLs for a given question using the chunks query retriever. Args: question: The question for which to retrieve context and URLs. Returns: A tuple containing: - A string with the concatenated content of relevant documents. - A list of unique URLs from the metadata of the relevant documents. """ # Retrieve relevant documents for the given question docs = chunks_query_retriever.get_relevant_documents(question) # Concatenate document content # context = " ".join(doc.page_content for doc in docs) context = [doc.page_content for doc in docs] return context class QuestionAnswerFromContext(BaseModel): """ Model to generate an answer to a query based on a given context. Attributes: answer_based_on_content (str): The generated answer based on the context. """ answer_based_on_content: str = Field(description="Generates an answer to a query based on a given context.") def create_question_answer_from_context_chain(llm): # Initialize the ChatOpenAI model with specific parameters question_answer_from_context_llm = llm # Define the prompt template for chain-of-thought reasoning question_answer_prompt_template = """ For the question below, provide a concise but suffice answer based ONLY on the provided context: {context} Question {question} """ # Create a PromptTemplate object with the specified template and input variables question_answer_from_context_prompt = PromptTemplate( template=question_answer_prompt_template, input_variables=["context", "question"], ) # Create a chain by combining the prompt template and the language model question_answer_from_context_cot_chain = question_answer_from_context_prompt | question_answer_from_context_llm.with_structured_output( QuestionAnswerFromContext) return question_answer_from_context_cot_chain def answer_question_from_context(question, context, question_answer_from_context_chain): """ Answer a question using the given context by invoking a chain of reasoning. Args: question: The question to be answered. context: The context to be used for answering the question. Returns: A dictionary containing the answer, context, and question. """ input_data = { "question": question, "context": context } print("Answering the question from the retrieved context...") output = question_answer_from_context_chain.invoke(input_data) answer = output.answer_based_on_content return {"answer": answer, "context": context, "question": question} def show_context(context): """ Display the contents of the provided context list. Args: context (list): A list of context items to be displayed. Prints each context item in the list with a heading indicating its position. """ for i, c in enumerate(context): print(f"Context {i + 1}:") print(c) print("\n") def read_pdf_to_string(path): """ Read a PDF document from the specified path and return its content as a string. Args: path (str): The file path to the PDF document. Returns: str: The concatenated text content of all pages in the PDF document. The function uses the 'fitz' library (PyMuPDF) to open the PDF document, iterate over each page, extract the text content from each page, and append it to a single string. """ # Open the PDF document located at the specified path doc = fitz.open(path) content = "" # Iterate over each page in the document for page_num in range(len(doc)): # Get the current page page = doc[page_num] # Extract the text content from the current page and append it to the content string content += page.get_text() return content def bm25_retrieval(bm25: BM25Okapi, cleaned_texts: List[str], query: str, k: int = 5) -> List[str]: """ Perform BM25 retrieval and return the top k cleaned text chunks. Args: bm25 (BM25Okapi): Pre-computed BM25 index. cleaned_texts (List[str]): List of cleaned text chunks corresponding to the BM25 index. query (str): The query string. k (int): The number of text chunks to retrieve. Returns: List[str]: The top k cleaned text chunks based on BM25 scores. """ # Tokenize the query query_tokens = query.split() # Get BM25 scores for the query bm25_scores = bm25.get_scores(query_tokens) # Get the indices of the top k scores top_k_indices = np.argsort(bm25_scores)[::-1][:k] # Retrieve the top k cleaned text chunks top_k_texts = [cleaned_texts[i] for i in top_k_indices] return top_k_texts async def exponential_backoff(attempt): """ Implements exponential backoff with a jitter. Args: attempt: The current retry attempt number. Waits for a period of time before retrying the operation. The wait time is calculated as (2^attempt) + a random fraction of a second. """ # Calculate the wait time with exponential backoff and jitter wait_time = (2 ** attempt) + random.uniform(0, 1) print(f"Rate limit hit. Retrying in {wait_time:.2f} seconds...") # Asynchronously sleep for the calculated wait time await asyncio.sleep(wait_time) async def retry_with_exponential_backoff(coroutine, max_retries=5): """ Retries a coroutine using exponential backoff upon encountering a RateLimitError. Args: coroutine: The coroutine to be executed. max_retries: The maximum number of retry attempts. Returns: The result of the coroutine if successful. Raises: The last encountered exception if all retry attempts fail. """ for attempt in range(max_retries): try: # Attempt to execute the coroutine return await coroutine except RateLimitError as e: # If the last attempt also fails, raise the exception if attempt == max_retries - 1: raise e # Wait for an exponential backoff period before retrying await exponential_backoff(attempt) # If max retries are reached without success, raise an exception raise Exception("Max retries reached") # Enum class representing different embedding providers class EmbeddingProvider(Enum): OPENAI = "openai" COHERE = "cohere" AMAZON_BEDROCK = "bedrock" # Enum class representing different model providers class ModelProvider(Enum): OPENAI = "openai" GROQ = "groq" ANTHROPIC = "anthropic" AMAZON_BEDROCK = "bedrock" def get_langchain_embedding_provider(provider: EmbeddingProvider, model_id: str = None): """ Returns an embedding provider based on the specified provider and model ID. Args: provider (EmbeddingProvider): The embedding provider to use. model_id (str): Optional - The specific embeddings model ID to use . Returns: A LangChain embedding provider instance. Raises: ValueError: If the specified provider is not supported. """ if provider == EmbeddingProvider.OPENAI: from langchain_openai import OpenAIEmbeddings return OpenAIEmbeddings() elif provider == EmbeddingProvider.COHERE: from langchain_cohere import CohereEmbeddings return CohereEmbeddings() elif provider == EmbeddingProvider.AMAZON_BEDROCK: from langchain_community.embeddings import BedrockEmbeddings return BedrockEmbeddings(model_id=model_id) if model_id else BedrockEmbeddings(model_id="amazon.titan-embed-text-v2:0") else: raise ValueError(f"Unsupported embedding provider: {provider}")