Skip to main content

An integration package connecting Crusoe AI and LangChain

Project description

🦜🔗 LangChain × Crusoe AI

PyPI version License: MIT

This package provides LangChain integrations for Crusoe AI's Managed Inference service, giving you access to leading open-source models powered by Crusoe's proprietary MemoryAlloy™ inference engine.

Features

  • OpenAI-compatible API: Drop-in replacement via BaseChatOpenAI
  • Leading open-source models: Llama 3.3, DeepSeek V3/R1, Qwen3, Gemma 3, Kimi-K2, GPT-OSS-120B
  • Full LangChain support: Streaming, async, tool calling, structured output
  • Ultra-low latency: Powered by MemoryAlloy cluster-wide KV cache technology
  • LangSmith integration: Built-in tracing and observability

Installation

pip install -U langchain-crusoe

Setup

  1. Create an account at Crusoe Cloud
  2. Generate an Inference API key in the Security tab
  3. Set your API key:
export CRUSOE_API_KEY="your-api-key"

Quick Start

from langchain_crusoe import ChatCrusoe

llm = ChatCrusoe(
    model="meta-llama/Llama-3.3-70B-Instruct",
    temperature=0,
    max_tokens=1024,
)

# Simple invocation
response = llm.invoke("Explain quantum computing in one paragraph.")
print(response.content)

# Streaming
for chunk in llm.stream("Write a haiku about open source."):
    print(chunk.content, end="", flush=True)

Available Models

Model Provider Context Length
meta-llama/Llama-3.3-70B-Instruct Meta 128k
openai/gpt-oss-120b OpenAI 128k
deepseek-ai/DeepSeek-V3-0324 DeepSeek 160k
deepseek-ai/DeepSeek-V4-Flash DeepSeek 1M
deepseek-ai/DeepSeek-V4-Pro DeepSeek 1M
google/gemma-4-31b-it Google 262k
moonshotai/Kimi-K2.6 Moonshot AI 256k
nvidia/Nemotron-3-Nano-30B-A3B NVIDIA 262k
nvidia/Nemotron-3-Nano-Omni-Reasoning-30B-A3B NVIDIA 262k
nvidia/Nemotron-3-Super-120B-A12B NVIDIA 262k
nvidia/Nemotron-3-Ultra-550B NVIDIA 262k
qwen/Qwen3-235B-A22B Qwen 131k
zai/GLM-5.1 Z.ai 202k
zai/GLM-5.2 Z.ai 256k

See the latest model list at the Crusoe Intelligence Foundry.

Advanced Usage

Tool Calling

from pydantic import BaseModel, Field

class GetWeather(BaseModel):
    """Get current weather for a location."""
    location: str = Field(description="City and state, e.g. San Francisco, CA")

llm_with_tools = llm.bind_tools([GetWeather])
response = llm_with_tools.invoke("What's the weather in Seattle?")
print(response.tool_calls)

Structured Output

from pydantic import BaseModel

class Summary(BaseModel):
    title: str
    key_points: list[str]
    sentiment: str

structured_llm = llm.with_structured_output(Summary)
result = structured_llm.invoke("Summarize the benefits of open-source AI models.")

Async Support

import asyncio

async def main():
    response = await llm.ainvoke("Hello, async world!")
    print(response.content)

asyncio.run(main())

Project ID

Optionally set a Crusoe Project ID for usage attribution:

llm = ChatCrusoe(
    model="meta-llama/Llama-3.3-70B-Instruct",
    crusoe_project_id="my-project-id",
)

Or via environment variable:

export CRUSOE_PROJECT_ID="my-project-id"

Configuration

Parameter Env Variable Default Description
api_key CRUSOE_API_KEY Your Crusoe inference API key (required)
model meta-llama/Llama-3.3-70B-Instruct Model to use
crusoe_api_base CRUSOE_API_BASE https://api.inference.crusoecloud.com/v1 API endpoint
crusoe_project_id CRUSOE_PROJECT_ID None Project ID for attribution
temperature 0.7 (inherited) Sampling temperature
max_tokens None Max tokens to generate
timeout None Request timeout
max_retries 2 Max retry attempts

Development

# Clone the repo
git clone https://github.com/acheamponge/langchain-crusoe.git
cd langchain-crusoe

# Install dependencies
poetry install --with lint,typing,test,test_integration

# Run unit tests
make tests

# Run integration tests (requires CRUSOE_API_KEY)
make integration_tests

# Run linting
make lint

Links

Project details


Download files

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

Source Distribution

langchain_crusoe-0.2.1.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

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

langchain_crusoe-0.2.1-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file langchain_crusoe-0.2.1.tar.gz.

File metadata

  • Download URL: langchain_crusoe-0.2.1.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.11.14 Darwin/25.5.0

File hashes

Hashes for langchain_crusoe-0.2.1.tar.gz
Algorithm Hash digest
SHA256 e20f4d6a0abe322669ae3d1b614a276fda3078b11036dbe677e68a8ede565aa1
MD5 308bedd3ee303ca3e1605e1441cff19a
BLAKE2b-256 fbe78453bbd10ccfbafe6ad7a6c9f5b6a47f6eaf26844e05161515676ebebc47

See more details on using hashes here.

File details

Details for the file langchain_crusoe-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: langchain_crusoe-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.11.14 Darwin/25.5.0

File hashes

Hashes for langchain_crusoe-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 efe3c507396b894e92f8df0a65253cb3566536ba5d6e3c68564db231cb84d2f7
MD5 c007a1e5abdafd228c492ac84afcc28b
BLAKE2b-256 95d9aaa9cfa705d9937d58e016d23946735587bf7d81d760bc8a90097f5b20af

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