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.23.4.tar.gz (480.7 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.23.4-py3-none-any.whl (693.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: datarobot_genai-0.23.4.tar.gz
  • Upload date:
  • Size: 480.7 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.23.4.tar.gz
Algorithm Hash digest
SHA256 133e4ea97ad176977875625fb214650d96244dbbb50250b76f04c64503fd42ca
MD5 235bd3276361a060823b5572bf7016e4
BLAKE2b-256 c277137e5daab24a28881f1c6b42d2232b68f59b403e7b73f482a8e9d15ccb22

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for datarobot_genai-0.23.4-py3-none-any.whl
Algorithm Hash digest
SHA256 c73ec8236f894493bc1b79f1c5106aa7dd6550b660a4ee6e03f3d63a0ceb2b61
MD5 7afd5c586196519e08a1ddc3e3f9e2a5
BLAKE2b-256 c67f730448889d3abda91d6f57ec3e4a3d583472f1c6f8690611e23006b07e49

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