Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .cursor/rules/pytest.mdc
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,8 @@ from pipelex.config_pipelex import get_config

from pipelex.core.pipe import PipeAbstract, update_job_metadata_for_pipe
from pipelex.core.pipes.pipe_output import PipeOutput, PipeOutputType
from pipelex.core.pipes.pipe_run_params import PipeRunParams
from pipelex.core.pipes.pipe_run_params import PipeRunParams
from pipelex.pipe_run.pipe_run_params import PipeRunParams
from pipelex.pipe_run.pipe_run_params import PipeRunParams
from pipelex.pipe_works.pipe_router_protocol import PipeRouterProtocol
```

Expand Down
2 changes: 0 additions & 2 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,3 +1 @@
PYRIGHT_PYTHON_FORCE_VERSION=1.1.398

PIPELEX_INFERENCE_API_KEY=
46 changes: 27 additions & 19 deletions .pipelex/inference/backends.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,48 +2,56 @@
endpoint = "https://inference.pipelex.com/v1"
api_key = "${PIPELEX_INFERENCE_API_KEY}"

[blackboxai]
enabled = false
endpoint = "https://api.blackbox.ai/v1"
api_key = "${BLACKBOX_API_KEY}"

[openai]
enabled = false
api_key = "${OPENAI_API_KEY}"

[azure_openai]
enabled = false
endpoint = "${AZURE_API_BASE}"
api_key = "${AZURE_API_KEY}"
api_version = "${AZURE_API_VERSION}"

[bedrock]
enabled = false
aws_region = "${AWS_REGION}"

[google]
enabled = false
api_key = "${GOOGLE_API_KEY}"

[vertexai]
enabled = false
gcp_project_id = "${GCP_PROJECT_ID}"
gcp_location = "${GCP_LOCATION}"
gcp_credentials_file_path = "${GCP_CREDENTIALS_FILE_PATH}"

[openai]
enabled = false
api_key = "${OPENAI_API_KEY}"

[anthropic]
enabled = false
api_key = "${ANTHROPIC_API_KEY}"
claude_4_tokens_limit = 8192

[ollama]
[mistral]
enabled = false
endpoint = "http://localhost:11434/v1"
api_key = "${MISTRAL_API_KEY}"

[xai]
enabled = false
endpoint = "https://api.x.ai/v1"
api_key = "${XAI_API_KEY}"

[bedrock]
[ollama]
enabled = false
aws_region = "${AWS_REGION}"
endpoint = "http://localhost:11434/v1"

[vertexai]
[blackboxai]
enabled = false
gcp_project_id = "${GCP_PROJECT_ID}"
gcp_location = "${GCP_LOCATION}"
gcp_credentials_file_path = "${GCP_CREDENTIALS_FILE_PATH}"
endpoint = "https://api.blackbox.ai/v1"
api_key = "${BLACKBOX_API_KEY}"

[mistral]
[fal]
enabled = false
api_key = "${MISTRAL_API_KEY}"
api_key = "${FAL_API_KEY}"

[internal] # software-only backend, runs internally, without AI
enabled = true
Expand Down
57 changes: 39 additions & 18 deletions .pipelex/inference/backends/anthropic.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,32 @@
default_sdk = "anthropic"
default_prompting_target = "anthropic"
################################################################################
# Anthropic Backend Configuration
################################################################################
#
# This file defines the model specifications for Anthropic Claude models.
# It contains model definitions for various Claude language models
# accessible through the Anthropic API.
#
# Configuration structure:
# - Each model is defined in its own section with the model name as the header
# - Headers with dots must be quoted (e.g., ["claude-3.5-sonnet"])
# - Model costs are in USD per million tokens (input/output)
#
################################################################################

################################################################################
# MODEL DEFAULTS
################################################################################

[defaults]
model_type = "llm"
sdk = "anthropic"
prompting_target = "anthropic"

################################################################################
# LANGUAGE MODELS
################################################################################

# --- Claude 3 Series ----------------------------------------------------------
[claude-3-haiku]
model_id = "claude-3-haiku-20240307"
max_tokens = 4096
Expand All @@ -17,22 +43,7 @@ outputs = ["text", "structured"]
max_prompt_images = 100
costs = { input = 15.0, output = 75.0 }

["claude-3.5-sonnet"]
model_id = "claude-3-5-sonnet-20240620"
max_tokens = 8192
inputs = ["text", "images"]
outputs = ["text", "structured"]
max_prompt_images = 100
costs = { input = 3.0, output = 15.0 }

["claude-3.5-sonnet-v2"]
model_id = "claude-3-5-sonnet-20241022"
max_tokens = 8192
inputs = ["text", "images"]
outputs = ["text", "structured"]
max_prompt_images = 100
costs = { input = 3.0, output = 15.0 }

# --- Claude 3.7 Series --------------------------------------------------------
["claude-3.7-sonnet"]
model_id = "claude-3-7-sonnet-20250219"
max_tokens = 8192
Expand All @@ -41,6 +52,7 @@ outputs = ["text", "structured"]
max_prompt_images = 100
costs = { input = 3.0, output = 15.0 }

# --- Claude 4 Series ----------------------------------------------------------
[claude-4-sonnet]
model_id = "claude-sonnet-4-20250514"
max_tokens = 64000
Expand All @@ -57,6 +69,7 @@ outputs = ["text", "structured"]
max_prompt_images = 100
costs = { input = 3.0, output = 15.0 }

# --- Claude 4.1 Series --------------------------------------------------------
["claude-4.1-opus"]
model_id = "claude-opus-4-1-20250805"
max_tokens = 32000
Expand All @@ -65,3 +78,11 @@ outputs = ["text", "structured"]
max_prompt_images = 100
costs = { input = 3.0, output = 15.0 }

# --- Claude 4.5 Series --------------------------------------------------------
["claude-4.5-sonnet"]
model_id = "claude-sonnet-4-5-20250929"
max_tokens = 64000
inputs = ["text", "images"]
outputs = ["text", "structured"]
max_prompt_images = 100
costs = { input = 3.0, output = 15.0 }
33 changes: 31 additions & 2 deletions .pipelex/inference/backends/azure_openai.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,32 @@
default_sdk = "azure_openai"
default_prompting_target = "openai"
################################################################################
# Azure OpenAI Backend Configuration
################################################################################
#
# This file defines the model specifications for Azure OpenAI models.
# It contains model definitions for OpenAI models deployed on Azure
# accessible through the Azure OpenAI API.
#
# Configuration structure:
# - Each model is defined in its own section with the model name as the header
# - Headers with dots must be quoted (e.g., ["gpt-4.1"])
# - Model costs are in USD per million tokens (input/output)
#
################################################################################

################################################################################
# MODEL DEFAULTS
################################################################################

[defaults]
model_type = "llm"
sdk = "azure_openai"
prompting_target = "openai"

################################################################################
# LANGUAGE MODELS
################################################################################

# --- GPT-4o Series ------------------------------------------------------------
[gpt-4o]
model_id = "gpt-4o-2024-11-20"
inputs = ["text", "images"]
Expand All @@ -13,6 +39,7 @@ inputs = ["text", "images"]
outputs = ["text", "structured"]
costs = { input = 0.15, output = 0.6 }

# --- GPT-4.1 Series -----------------------------------------------------------
["gpt-4.1"]
model_id = "gpt-4.1-2025-04-14"
inputs = ["text", "images"]
Expand All @@ -31,6 +58,7 @@ inputs = ["text", "images"]
outputs = ["text", "structured"]
costs = { input = 0.1, output = 0.4 }

# --- o Series ----------------------------------------------------------------
[o1-mini]
model_id = "o1-mini-2024-09-12"
inputs = ["text"]
Expand All @@ -49,6 +77,7 @@ inputs = ["text"]
outputs = ["text", "structured"]
costs = { input = 1.1, output = 4.4 }

# --- GPT-5 Series -------------------------------------------------------------
[gpt-5-mini]
model_id = "gpt-5-mini-2025-08-07"
inputs = ["text", "images"]
Expand Down
65 changes: 41 additions & 24 deletions .pipelex/inference/backends/bedrock.toml
Original file line number Diff line number Diff line change
@@ -1,13 +1,40 @@
default_sdk = "bedrock_aioboto3"
default_prompting_target = "anthropic"
################################################################################
# AWS Bedrock Backend Configuration
################################################################################
#
# This file defines the model specifications for AWS Bedrock models.
# It contains model definitions for various language models
# accessible through the AWS Bedrock service.
#
# Configuration structure:
# - Each model is defined in its own section with the model name as the header
# - Headers with dots must be quoted (e.g., ["claude-3.5-sonnet"])
# - Model costs are in USD per million tokens (input/output)
#
################################################################################

################################################################################
# MODEL DEFAULTS
################################################################################

[defaults]
model_type = "llm"
sdk = "bedrock_aioboto3"
prompting_target = "anthropic"

################################################################################
# LANGUAGE MODELS
################################################################################

# --- Mistral Models -----------------------------------------------------------
[bedrock-mistral-large]
model_id = "mistral.mistral-large-2407-v1:0"
max_tokens = 8192
inputs = ["text"]
outputs = ["text"]
costs = { input = 4.0, output = 12.0 }

# --- Meta Llama Models --------------------------------------------------------
[bedrock-meta-llama-3-3-70b-instruct]
model_id = "us.meta.llama3-3-70b-instruct-v1:0"
max_tokens = 8192
Expand All @@ -16,6 +43,7 @@ outputs = ["text"]
# TODO: find out the actual cost per million tokens for llama3 on bedrock
costs = { input = 3.0, output = 15.0 }

# --- Amazon Nova Models -------------------------------------------------------
[bedrock-nova-pro]
model_id = "us.amazon.nova-pro-v1:0"
max_tokens = 5120
Expand All @@ -24,28 +52,7 @@ outputs = ["text"]
# TODO: find out the actual cost per million tokens for nova on bedrock
costs = { input = 3.0, output = 15.0 }

################################################################################
# Anthropic Models
################################################################################

["claude-3.5-sonnet"]
sdk = "bedrock_anthropic"
model_id = "us.anthropic.claude-3-5-sonnet-20240620-v1:0"
max_tokens = 8192
inputs = ["text", "images"]
outputs = ["text", "structured"]
max_prompt_images = 100
costs = { input = 3.0, output = 15.0 }

["claude-3.5-sonnet-v2"]
sdk = "bedrock_anthropic"
model_id = "anthropic.claude-3-5-sonnet-20241022-v2:0"
max_tokens = 8192
inputs = ["text", "images"]
outputs = ["text", "structured"]
max_prompt_images = 100
costs = { input = 3.0, output = 15.0 }

# --- Claude LLMs --------------------------------------------------------------
["claude-3.7-sonnet"]
sdk = "bedrock_anthropic"
model_id = "us.anthropic.claude-3-7-sonnet-20250219-v1:0"
Expand Down Expand Up @@ -82,3 +89,13 @@ outputs = ["text", "structured"]
max_prompt_images = 100
costs = { input = 3.0, output = 15.0 }

# anthropic.claude-sonnet-4-5-20250929-v1:0,Anthropic,arn:aws:bedrock:us-west-2::foundation-model/anthropic.claude-sonnet-4-5-20250929-v1:0,

["claude-4.5-sonnet"]
sdk = "bedrock_anthropic"
model_id = "us.anthropic.claude-sonnet-4-5-20250929-v1:0"
max_tokens = 8192
inputs = ["text", "images"]
outputs = ["text", "structured"]
max_prompt_images = 100
costs = { input = 3.0, output = 15.0 }
Loading
Loading