This repo will contain a set of building blocks and examples to build Agentic AI solutions using Python, OCI and Open Source
As part of my role, I frequently design and develop prototypes to demonstrate the application of Oracle Cloud Infrastructure (OCI) Generative AI Service and OCI AI Agents in crafting solutions tailored to our partners' and customers' requirements.
To expedite the assembly of these prototypes and any requested demonstrations, I have curated a collection of fundamental building blocks and examples.
I am now pleased to share these resources with you.
- A reader for the configuration settings (TOML format)
- A Router (based on Cohere Command-r-plus)
- OCI AI RAG Agent client
- SQL Agent (based on SelectAI) client
- A custom RAG agent, based on Langchain, OCI and 23AI
- A Document Summarizer
- A component to help anonymize documents
- Utility to load documents in DB 23AI (db_loader)
- Test OCI AI RAG Agent
- Test SQL Agent
- Agent with LangGraph and routing
- Agent for Document Analysis
- Basic chatbot with memory
Well, even if you're doing wonderful AI, it doesn't mean that you should forget that to be reusable, you should provide good Python code, well formatted and checked.
These are my mandatory best practices:
- use black to check and fix formatting
- use pylint
These tools are run on the entire codebase, before any commit.
In addition, components must be simple to use. They encapsulate any needed complexity, but to use them you need a few lines of code. See, for example: Test SQL Agent
All the settings needed, that can be exposed (not private) are managed in a toml file.
In the example provided you find all the configuration needed, for all components and examples.
Obviously:
- You need to change the settings accordingly to your needs
- You can remove some of the settings, if you don't need all of them
All the examples are designed in a way that enables you to run on your laptop (in my case, my MacBook). Therefore, you need to have API_KEYS in the right place ($HOME/.config).
Everything can be easily changed to use Instance Principals or Resource Principals, but.. it is up to you. Here, we concentrate on AI.
Well, it is not a best practice to redo again what was already done by someone else, so here I'll point to useful and good documentation.
[RAG Agent] If you need a reference to setup the OCI AI RAG Agent, based on 23 AI, here you can find a good one.
- (06/02/2025) Project has just started
- (07/02/2025) Published first components and examples on Github
- Added document analyzer, with parallel workflow
therefore, it is wip.