From cb02c36f845afbe3011479fd1c26c38c80236757 Mon Sep 17 00:00:00 2001 From: SSharma-10 Date: Tue, 29 Sep 2026 22:04:41 +0530 Subject: [PATCH] Remove Gradient branding from README and examples --- README.md | 17 +++++++++-------- examples/gateway/async_invoke_tools.py | 2 +- examples/gateway/invoke_tools.py | 2 +- examples/inference/chat_completion_stream.py | 2 +- examples/inference/image_generation.py | 2 +- examples/inference/list_models.py | 2 +- 6 files changed, 14 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index e292157d..f7cb4fc0 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ on the [DigitalOcean OpenAPI Specification](https://github.com/digitalocean/open > **🚀 New in v0.29.0 — AI & Inference support** > > `pydo` now ships first-class support for DigitalOcean's -> [Gradient AI Platform](https://www.digitalocean.com/products/gradient): chat +> [Inference](https://docs.digitalocean.com/products/inference/) APIs: chat > completions (with streaming), image generation, audio, batch inference, and > model listing — all from the same `Client`. Jump to > [**AI & Inference**](#ai--inference) to get started. @@ -93,7 +93,7 @@ client = Client(token=os.getenv("DIGITALOCEAN_TOKEN")) > | What you're calling | What you need | > | --- | --- | > | Infrastructure APIs (`droplets`, `ssh_keys`, `kubernetes`, `volumes`, …) | A DigitalOcean API token (PAT). | -> | Inference APIs (`chat`, `images`, `models`, `audio`, `batches`, `files`, `responses`) | A PAT created with **full access** scope, **or** a Gradient **Model Access Key**. | +> | Inference APIs (`chat`, `images`, `models`, `audio`, `batches`, `files`, `responses`) | A PAT created with **full access** scope, **or** a **Model Access Key**. | > > If you only have a limited-scope PAT, infra calls will work but inference > calls will fail with a 401. To fix it, create a new PAT with full access, @@ -103,7 +103,7 @@ client = Client(token=os.getenv("DIGITALOCEAN_TOKEN")) > # All three of these work — pick the one you like: > client = Client(token=os.environ["DIGITALOCEAN_TOKEN"]) # full-access PAT > client = Client(api_key=os.environ["DIGITALOCEAN_TOKEN"]) # same thing, different name -> client = Client(api_key=os.environ["MODEL_ACCESS_KEY"]) # Gradient model access key +> client = Client(api_key=os.environ["MODEL_ACCESS_KEY"]) # model access key > ``` #### Example of Using `pydo` to Access DO Resources @@ -134,11 +134,12 @@ ID: 123457, NAME: my_prod_ssh_key, FINGERPRINT: eb:76:c7:2a:d3:3e:80:5d:ef:2e:ca ## **AI & Inference** -> Talk to models on DigitalOcean's Gradient AI Platform with the same -> `pydo.Client`. +> Talk to models on DigitalOcean's +> [Inference](https://docs.digitalocean.com/products/inference/) platform with +> the same `pydo.Client`. The snippets below use a **DigitalOcean PAT created with full access scope** -(required for inference APIs). A Gradient Model Access Key works too — see +(required for inference APIs). A Model Access Key works too — see the [credentials note](#pydo-quickstart) above. There is also a separate namespace for inference: `from pydo.inference @@ -459,8 +460,8 @@ Long term: - The client currently inputs and outputs JSON dictionaries. Adding models would unlock features such as typing and validation. - Add supporting functions to elevate customer experience (i.e. adding a funtion that surfaces IP address for a Droplet) -- **AI & Inference**: continue expanding coverage of the - [Gradient AI Platform](https://www.digitalocean.com/products/gradient) +- **AI & Inference**: continue expanding coverage of + [Inference](https://docs.digitalocean.com/products/inference/) alongside the infrastructure APIs — keeping chat, images, audio, batches, responses, agents, and model management feature-complete and idiomatic from the same `pydo.Client`. `pydo` is an diff --git a/examples/gateway/async_invoke_tools.py b/examples/gateway/async_invoke_tools.py index bdc2aff5..69b6a102 100644 --- a/examples/gateway/async_invoke_tools.py +++ b/examples/gateway/async_invoke_tools.py @@ -32,7 +32,7 @@ async def main() -> None: print("MCP URL:", session.url) output = await session.tools.invoke_one( - "exa_web_search", {"query": "DigitalOcean Gradient", "max_results": 2} + "exa_web_search", {"query": "DigitalOcean Inference", "max_results": 2} ) print("web_search output:", str(output)[:200]) diff --git a/examples/gateway/invoke_tools.py b/examples/gateway/invoke_tools.py index 8415bf5a..1625b978 100644 --- a/examples/gateway/invoke_tools.py +++ b/examples/gateway/invoke_tools.py @@ -28,7 +28,7 @@ [ { "tool": "exa_web_search", - "arguments": {"query": "DigitalOcean Gradient", "max_results": 3}, + "arguments": {"query": "DigitalOcean Inference", "max_results": 3}, }, { "tool": "exa_web_fetch", diff --git a/examples/inference/chat_completion_stream.py b/examples/inference/chat_completion_stream.py index 2dd799cf..38404ada 100644 --- a/examples/inference/chat_completion_stream.py +++ b/examples/inference/chat_completion_stream.py @@ -1,4 +1,4 @@ -"""Stream a chat completion from the Gradient AI Platform token-by-token. +"""Stream a chat completion from DigitalOcean Inference token-by-token. Uses the inference-focused ``pydo.inference.Client`` entry point so the top-level surface (``dir(client)``, IDE autocomplete) stays focused on diff --git a/examples/inference/image_generation.py b/examples/inference/image_generation.py index e4355a16..b9120184 100644 --- a/examples/inference/image_generation.py +++ b/examples/inference/image_generation.py @@ -1,4 +1,4 @@ -"""Generate an image with the Gradient AI Platform and save it to disk. +"""Generate an image with DigitalOcean Inference and save it to disk. Uses the inference-focused ``pydo.inference.Client`` entry point so the top-level surface (``dir(client)``, IDE autocomplete) stays focused on diff --git a/examples/inference/list_models.py b/examples/inference/list_models.py index 188cb369..f971573b 100644 --- a/examples/inference/list_models.py +++ b/examples/inference/list_models.py @@ -1,4 +1,4 @@ -"""List every inference model available to the current Gradient account. +"""List every inference model available to the current DigitalOcean account. Uses the inference-focused ``pydo.inference.Client`` entry point so the top-level surface (``dir(client)``, IDE autocomplete) stays focused on