Skip to main content

Generic helpers for GenAI

Project description

DataRobot Logo

DataRobot GenAI Library

Homepage · PyPI · Support

License PyPI version

A toolkit for building agents on DataRobot.

  • Unified LLM layer (DataRobot-compatible)—you use one get_llm() entry point per integration (LangGraph, LlamaIndex, CrewAI, NAT), all backed by the same LiteLLM-based routing to the DataRobot LLM Gateway, LLM deployments, NIM, or external providers.
  • Library of agentic tools and DataRobot-compatible MCP server—use drtools and drmcp to give your agent first-class capabilities to interact with the world.
  • AG-UI integration—your agents expose a standard AG-UI event stream (RunAgentInput in, lifecycle + text + tool-call events out), so your UIs and the DataRobot platform render runs consistently without bespoke adapters per framework.
  • Multi-agent systems out of the box—you get first-class patterns for planner/writer crews, LangGraph multi-node graphs, and LlamaIndex AgentWorkflow handoffs; wrap them with one helper and keep the same streaming contract.
  • Orchestration—you build agents from universal pieces in the low-code workflow.yaml interface. Combine and reuse LLMs, tools, agents, and evaluators. The design stays compatible with and draws inspiration from NeMo Agentic Toolkit.
  • Serving and evaluating with DRAgent—you run a front-end server to plug your agent into a real-world application. DRAgent supports distributed tracing, generation and evaluation endpoints, async generations, and two-way communication over WebSockets.

Use

Installation

  • You need Python 3.11–3.13.
  • Install the extra that matches the framework you use:
pip install "datarobot-genai[crewai]"
pip install "datarobot-genai[langgraph]"
pip install "datarobot-genai[llamaindex]"
pip install "datarobot-genai[nat]"

You can also install:

  • datarobot-genai[dragent]—serve and orchestrate your agent with DRAgent.
  • datarobot-genai[drtools]—use the standard library of agentic tools DataRobot provides.
  • datarobot-genai[drmcpbase]—Base class to derive FastMCP servers.
  • datarobot-genai[drmcputils]—shared MCP utilities consumed by drmcpbase and drtools.
  • datarobot-genai[drmcp]—host a custom MCP server in DataRobot (includes drmcpbase, drtools, and template-server dependencies).
  • datarobot-genai[eval]—agent evaluation utilities built on the NeMo Evaluator launcher.

Credentials

You need a DataRobot account to use DataRobot-backed features. Export these environment variables:

# Set your DataRobot API token (replace the placeholder).
export DATAROBOT_API_TOKEN=YOUR_DATAROBOT_API_TOKEN
export DATAROBOT_ENDPOINT=https://app.datarobot.com/api/v2

Standalone end-to-end examples

Follow quickstart.ipynb to walk through an experience of setting a LangGraph agent with DataRobot:

  • LLM Gateway
  • drtools
  • Prompt Management
  • Conversion to DataRobot agent format
  • Running the agent with an AG-UI interface.

In-depth documentation

See docs/README.md for guides on every framework and feature in datarobot-genai.

Develop

You need Python 3.11–3.13, uv, Task CLI, and pre-commit.

uv sync --all-extras --dev
pre-commit install
task test

Semantic versioning

When you change the library, bump the patch version and add an entry to CHANGELOG.md. When you introduce a backward-incompatible change, bump the minor version.

TestPyPI

Comment /build on your PR to build and publish a dev version of the package to TestPyPI.

Excluded Upstream Dependencies

Several transitive dependencies pulled in by upstream packages are not used by this library at runtime. These are explicitly excluded via [tool.uv] exclude-dependencies in pyproject.toml to reduce install size and CVE surface area.

Package Pulled in by Reason excluded
build crewai Python build system; runtime unnecessary
diskcache ragas Optional disk caching backend; not used
flask nvidia-nat 1.6.0 Web framework; not used
kubernetes crewai-tools K8s client; not used
lancedb crewai Optional vector DB backend; not used
langchain-milvus nvidia-nat-langchain Milvus vector DB adapter; not used
leptonai nemo-evaluator-launcher Lepton AI cloud backend; not used, pins httpx==0.27.2 which conflicts with the auth extra
llama-index-cli llama-index CLI tool; not needed at runtime
openpyxl crewai-tools Excel parser; not used
pymilvus langchain-milvus Milvus client; not used
python-docx crewai-tools Word doc parser; not used
pytube crewai-tools YouTube downloader; not used
scikit-network ragas Graph analysis library; not used
stagehand crewai-tools Playwright web automation; not used
uv crewai Package manager bundled as a runtime dep; not needed
youtube-transcript-api crewai-tools YouTube transcripts; not used

Publishing

  • Same-repo PRs—comment /build on your PR to publish dev builds to TestPyPI (.devN).
  • Merge to main—the release flow creates tag v{version} and publishes to PyPI automatically.
  • Version tags—when you push a v* tag, PyPI publish runs as well.
  • Local release—optionally run task release:tag-and-push to create and push v{version} from your machine.

Links

License

Apache-2.0—see LICENSE.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

datarobot_genai-0.21.1.tar.gz (461.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

datarobot_genai-0.21.1-py3-none-any.whl (668.1 kB view details)

Uploaded Python 3

File details

Details for the file datarobot_genai-0.21.1.tar.gz.

File metadata

  • Download URL: datarobot_genai-0.21.1.tar.gz
  • Upload date:
  • Size: 461.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for datarobot_genai-0.21.1.tar.gz
Algorithm Hash digest
SHA256 67e48cc713a2d1dd63bbff96c4243a75658bd3a0a8580045abd3b28c1e7ad7c7
MD5 02c07d9b0dfd31042d061cbd97f6cc87
BLAKE2b-256 ee39329dc990d517cea27777cbff557808cc130fefdc388332eae45bf2ed34b8

See more details on using hashes here.

File details

Details for the file datarobot_genai-0.21.1-py3-none-any.whl.

File metadata

File hashes

Hashes for datarobot_genai-0.21.1-py3-none-any.whl
Algorithm Hash digest
SHA256 43531625a28eb8c9e232bcd65103a924da3efdb8113371a1dbb34492a5ef29db
MD5 022c8f749518611efa2e505bd36b9206
BLAKE2b-256 e023832a827548ae36fd61c8ef6f168f0b9fe15273902449b2712e18fb01fa6e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page