Comparing ADK and SDK
Learn when to use OCI ADK and OCI SDK to build agents in OCI Generative AI Agents service.
Note: The OCI ADK is provided as an add-on to the OCI Python SDK and is released in alignment with the OCI SDK release cycle.
On this page, "OCI SDK" refers to using the low-level SDK APIs of OCI Generative AI Agents Service, rather than using the ADK APIs.
About the SDK
OCI SDK provides you low-level APIs to interact with OCI services such as the Generative AI Agents service.
The OCI ADK is built on top of the OCI SDK. To achieve what ADK can do for you using the raw OCI SDK, you need to write a lot more code.
When to use the ADK
Tip: We recommend you use the ADK to develop agents, except if your use case is one of the scenarios outlined in the when to use OCI SDK section.
OCI ADK provides high-level APIs to build agents, offering a developer experience similar to other agent frameworks.
With OCI ADK, you can focus on agentic logic custom to the business, instead of writing boilerplate code and managing integration details.
For example, instead of spending hours developing a custom function-calling agent with the OCI SDK, you can create that agent in minutes using the ADK.
When to use the SDK
There are a few scenarios you should use OCI SDK directly.
- You would like to programmatically create an agent, an agent endpoint, or a knowledge base. These resources require infra provisioning and are out of scope for the ADK.
- You're using a programming language not supported by the ADK, such as Go, .NET, and Ruby. ADK supports Python.
- Your use case requires tools not supported in the ADK, such as the SQL Tool.
Tip: You cannot create an agent with the ADK. First, create an agent and an agent endpoint using OCI SDK or the Console. Then, use the ADK to set up tools for the agent and run the agent. We recommended this approach for building agents in OCI Generative AI Agents service.