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-R1-0528 DeepSeek 160k
deepseek-ai/DeepSeek-V3.1 DeepSeek 160k
Qwen/Qwen3-235B-A22B Qwen 131k
google/gemma-3-12b-it Google 128k
moonshotai/Kimi-K2-Thinking Moonshot AI 131k

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.crusoe.ai/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/langchain-ai/langchain-crusoe.git
cd langchain-crusoe/libs/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.1.1.tar.gz (6.2 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.1.1-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for langchain_crusoe-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d309431db108f3c03fd584b56567c593aef1416afd5345634307d1e817753c98
MD5 438db48338f78e8b28f4c310868a8d5c
BLAKE2b-256 685ee9b4f646241764aae7e45bef61de931d56d04e410c1be60c525c1925df37

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for langchain_crusoe-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a4c2e035a32554f8715f082431e1e9817e572017fa15caed0e515bea737b1b38
MD5 9cc1a0ecd2afeabe7e5f17c6a838dadc
BLAKE2b-256 e7ff9a3e3856a131ae1306acd750fb57b3bfc0540aa156283fc2b70d11bee83e

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