Skip to content
Merged
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
5,015 changes: 2,568 additions & 2,447 deletions go/pkg/sdk/oapi/client.gen.go

Large diffs are not rendered by default.

63 changes: 63 additions & 0 deletions openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9676,6 +9676,7 @@ components:
oneOf:
- $ref: '#/components/schemas/OllamaEmbedderConfig'
- $ref: '#/components/schemas/OpenAIEmbedderConfig'
- $ref: '#/components/schemas/OpenRouterEmbedderConfig'
- $ref: '#/components/schemas/BedrockEmbedderConfig'
- $ref: '#/components/schemas/CohereEmbedderConfig'
- $ref: '#/components/schemas/GoogleEmbedderConfig'
Expand All @@ -9686,6 +9687,7 @@ components:
mapping:
ollama: '#/components/schemas/OllamaEmbedderConfig'
openai: '#/components/schemas/OpenAIEmbedderConfig'
openrouter: '#/components/schemas/OpenRouterEmbedderConfig'
bedrock: '#/components/schemas/BedrockEmbedderConfig'
cohere: '#/components/schemas/CohereEmbedderConfig'
gemini: '#/components/schemas/GoogleEmbedderConfig'
Expand Down Expand Up @@ -19132,6 +19134,9 @@ components:
API key via `api_key` field or `OPENROUTER_API_KEY` environment variable.


Antfly currently supports dense text embeddings through this provider.


**Example Models:** openai/text-embedding-3-small (default), openai/text-embedding-3-large,

google/gemini-embedding-001, qwen/qwen3-embedding-8b
Expand All @@ -19148,6 +19153,10 @@ components:
description: The OpenRouter model identifier (e.g., 'openai/text-embedding-3-small', 'google/gemini-embedding-001').
default: openai/text-embedding-3-small
example: openai/text-embedding-3-small
url:
type: string
format: uri
description: The OpenRouter API base URL. Defaults to OPENROUTER_BASE_URL or https://openrouter.ai/api/v1.
api_key:
type: string
writeOnly: true
Expand Down Expand Up @@ -20298,13 +20307,66 @@ components:
required:
- provider
- model
OpenRouterGeneratorConfig:
type: object
description: >
Configuration for the OpenRouter generative AI provider.
properties:
provider:
type: string
enum:
- openrouter
model:
type: string
description: The OpenRouter model identifier to use.
example: openai/gpt-4.1
url:
type: string
format: uri
description: The URL of the OpenRouter API endpoint.
default: https://openrouter.ai/api/v1
api_key:
type: string
writeOnly: true
description: The OpenRouter API key.
temperature:
type: number
format: float
description: Controls randomness in generation (0.0-2.0).
minimum: 0.0
maximum: 2.0
max_tokens:
type: integer
description: Maximum number of tokens to generate in the response.
top_p:
type: number
format: float
description: Nucleus sampling parameter (0.0-1.0).
minimum: 0.0
maximum: 1.0
frequency_penalty:
type: number
format: float
description: Penalty for token frequency (-2.0 to 2.0).
minimum: -2.0
maximum: 2.0
presence_penalty:
type: number
format: float
description: Penalty for token presence (-2.0 to 2.0).
minimum: -2.0
maximum: 2.0
required:
- provider
- model
GeneratorProvider:
type: string
enum:
- gemini
- vertex
- ollama
- openai
- openrouter
- antfly
description: Generator providers implemented by Antfly's generation runtime.
GeneratorConfig:
Expand All @@ -20317,6 +20379,7 @@ components:
- $ref: '#/components/schemas/OllamaGeneratorConfig'
- $ref: '#/components/schemas/AntflyGeneratorConfig'
- $ref: '#/components/schemas/OpenAIGeneratorConfig'
- $ref: '#/components/schemas/OpenRouterGeneratorConfig'
- properties:
rate_limit:
x-go-type-skip-optional-pointer: false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -791,6 +791,8 @@
from .open_ai_generator_config_provider import OpenAIGeneratorConfigProvider
from .open_router_embedder_config import OpenRouterEmbedderConfig
from .open_router_embedder_config_provider import OpenRouterEmbedderConfigProvider
from .open_router_generator_config import OpenRouterGeneratorConfig
from .open_router_generator_config_provider import OpenRouterGeneratorConfigProvider
from .package_artifact import PackageArtifact
from .package_artifact_kind import PackageArtifactKind
from .package_dependency import PackageDependency
Expand Down Expand Up @@ -1853,6 +1855,8 @@
"OpenAIGeneratorConfigProvider",
"OpenRouterEmbedderConfig",
"OpenRouterEmbedderConfigProvider",
"OpenRouterGeneratorConfig",
"OpenRouterGeneratorConfigProvider",
"PackageArtifact",
"PackageArtifactKind",
"PackageDependency",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
from ..models.index_execution_config import IndexExecutionConfig
from ..models.ollama_embedder_config import OllamaEmbedderConfig
from ..models.open_ai_embedder_config import OpenAIEmbedderConfig
from ..models.open_router_embedder_config import OpenRouterEmbedderConfig
from ..models.vertex_embedder_config import VertexEmbedderConfig


Expand Down Expand Up @@ -69,8 +70,8 @@ class CreateEmbeddingsIndexRequest:
product similarity. Use "l2_squared" for models trained with Euclidean distance. The default is "l2_squared".
mem_only (bool | Unset): Whether to use in-memory only storage (dense only)
embedder (AntflyEmbedderConfig | BedrockEmbedderConfig | CohereEmbedderConfig | GoogleEmbedderConfig |
OllamaEmbedderConfig | OpenAIEmbedderConfig | Unset | VertexEmbedderConfig): Embedding provider configuration
accepted when Antfly creates and
OllamaEmbedderConfig | OpenAIEmbedderConfig | OpenRouterEmbedderConfig | Unset | VertexEmbedderConfig):
Embedding provider configuration accepted when Antfly creates and
maintains an embeddings index. This purpose-specific subset reuses the
canonical provider configurations; it does not define a second provider
namespace.
Expand Down Expand Up @@ -106,6 +107,7 @@ class CreateEmbeddingsIndexRequest:
| GoogleEmbedderConfig
| OllamaEmbedderConfig
| OpenAIEmbedderConfig
| OpenRouterEmbedderConfig
| Unset
| VertexEmbedderConfig
) = UNSET
Expand All @@ -122,6 +124,7 @@ def to_dict(self) -> dict[str, Any]:
from ..models.google_embedder_config import GoogleEmbedderConfig
from ..models.ollama_embedder_config import OllamaEmbedderConfig
from ..models.open_ai_embedder_config import OpenAIEmbedderConfig
from ..models.open_router_embedder_config import OpenRouterEmbedderConfig
from ..models.vertex_embedder_config import VertexEmbedderConfig

type_ = self.type_.value
Expand Down Expand Up @@ -179,6 +182,8 @@ def to_dict(self) -> dict[str, Any]:
embedder = self.embedder.to_dict()
elif isinstance(self.embedder, OpenAIEmbedderConfig):
embedder = self.embedder.to_dict()
elif isinstance(self.embedder, OpenRouterEmbedderConfig):
embedder = self.embedder.to_dict()
elif isinstance(self.embedder, BedrockEmbedderConfig):
embedder = self.embedder.to_dict()
elif isinstance(self.embedder, CohereEmbedderConfig):
Expand Down Expand Up @@ -268,6 +273,7 @@ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
from ..models.index_execution_config import IndexExecutionConfig
from ..models.ollama_embedder_config import OllamaEmbedderConfig
from ..models.open_ai_embedder_config import OpenAIEmbedderConfig
from ..models.open_router_embedder_config import OpenRouterEmbedderConfig
from ..models.vertex_embedder_config import VertexEmbedderConfig

d = dict(src_dict)
Expand Down Expand Up @@ -341,6 +347,7 @@ def _parse_embedder(
| GoogleEmbedderConfig
| OllamaEmbedderConfig
| OpenAIEmbedderConfig
| OpenRouterEmbedderConfig
| Unset
| VertexEmbedderConfig
):
Expand All @@ -365,40 +372,48 @@ def _parse_embedder(
try:
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_2 = BedrockEmbedderConfig.from_dict(data)
componentsschemas_index_embedder_config_type_2 = OpenRouterEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_2
except (TypeError, ValueError, AttributeError, KeyError):
pass
try:
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_3 = CohereEmbedderConfig.from_dict(data)
componentsschemas_index_embedder_config_type_3 = BedrockEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_3
except (TypeError, ValueError, AttributeError, KeyError):
pass
try:
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_4 = GoogleEmbedderConfig.from_dict(data)
componentsschemas_index_embedder_config_type_4 = CohereEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_4
except (TypeError, ValueError, AttributeError, KeyError):
pass
try:
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_5 = VertexEmbedderConfig.from_dict(data)
componentsschemas_index_embedder_config_type_5 = GoogleEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_5
except (TypeError, ValueError, AttributeError, KeyError):
pass
try:
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_6 = VertexEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_6
except (TypeError, ValueError, AttributeError, KeyError):
pass
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_6 = AntflyEmbedderConfig.from_dict(data)
componentsschemas_index_embedder_config_type_7 = AntflyEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_6
return componentsschemas_index_embedder_config_type_7

embedder = _parse_embedder(d.pop("embedder", UNSET))

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
from ..models.index_execution_config import IndexExecutionConfig
from ..models.ollama_embedder_config import OllamaEmbedderConfig
from ..models.open_ai_embedder_config import OpenAIEmbedderConfig
from ..models.open_router_embedder_config import OpenRouterEmbedderConfig
from ..models.vertex_embedder_config import VertexEmbedderConfig


Expand Down Expand Up @@ -65,8 +66,8 @@ class EmbeddingsIndexConfig:
product similarity. Use "l2_squared" for models trained with Euclidean distance. The default is "l2_squared".
mem_only (bool | Unset): Whether to use in-memory only storage (dense only)
embedder (AntflyEmbedderConfig | BedrockEmbedderConfig | CohereEmbedderConfig | GoogleEmbedderConfig |
OllamaEmbedderConfig | OpenAIEmbedderConfig | Unset | VertexEmbedderConfig): Embedding provider configuration
accepted when Antfly creates and
OllamaEmbedderConfig | OpenAIEmbedderConfig | OpenRouterEmbedderConfig | Unset | VertexEmbedderConfig):
Embedding provider configuration accepted when Antfly creates and
maintains an embeddings index. This purpose-specific subset reuses the
canonical provider configurations; it does not define a second provider
namespace.
Expand Down Expand Up @@ -98,6 +99,7 @@ class EmbeddingsIndexConfig:
| GoogleEmbedderConfig
| OllamaEmbedderConfig
| OpenAIEmbedderConfig
| OpenRouterEmbedderConfig
| Unset
| VertexEmbedderConfig
) = UNSET
Expand All @@ -114,6 +116,7 @@ def to_dict(self) -> dict[str, Any]:
from ..models.google_embedder_config import GoogleEmbedderConfig
from ..models.ollama_embedder_config import OllamaEmbedderConfig
from ..models.open_ai_embedder_config import OpenAIEmbedderConfig
from ..models.open_router_embedder_config import OpenRouterEmbedderConfig
from ..models.vertex_embedder_config import VertexEmbedderConfig

publication_policy: str | Unset = UNSET
Expand Down Expand Up @@ -158,6 +161,8 @@ def to_dict(self) -> dict[str, Any]:
embedder = self.embedder.to_dict()
elif isinstance(self.embedder, OpenAIEmbedderConfig):
embedder = self.embedder.to_dict()
elif isinstance(self.embedder, OpenRouterEmbedderConfig):
embedder = self.embedder.to_dict()
elif isinstance(self.embedder, BedrockEmbedderConfig):
embedder = self.embedder.to_dict()
elif isinstance(self.embedder, CohereEmbedderConfig):
Expand Down Expand Up @@ -236,6 +241,7 @@ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
from ..models.index_execution_config import IndexExecutionConfig
from ..models.ollama_embedder_config import OllamaEmbedderConfig
from ..models.open_ai_embedder_config import OpenAIEmbedderConfig
from ..models.open_router_embedder_config import OpenRouterEmbedderConfig
from ..models.vertex_embedder_config import VertexEmbedderConfig

d = dict(src_dict)
Expand Down Expand Up @@ -294,6 +300,7 @@ def _parse_embedder(
| GoogleEmbedderConfig
| OllamaEmbedderConfig
| OpenAIEmbedderConfig
| OpenRouterEmbedderConfig
| Unset
| VertexEmbedderConfig
):
Expand All @@ -318,40 +325,48 @@ def _parse_embedder(
try:
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_2 = BedrockEmbedderConfig.from_dict(data)
componentsschemas_index_embedder_config_type_2 = OpenRouterEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_2
except (TypeError, ValueError, AttributeError, KeyError):
pass
try:
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_3 = CohereEmbedderConfig.from_dict(data)
componentsschemas_index_embedder_config_type_3 = BedrockEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_3
except (TypeError, ValueError, AttributeError, KeyError):
pass
try:
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_4 = GoogleEmbedderConfig.from_dict(data)
componentsschemas_index_embedder_config_type_4 = CohereEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_4
except (TypeError, ValueError, AttributeError, KeyError):
pass
try:
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_5 = VertexEmbedderConfig.from_dict(data)
componentsschemas_index_embedder_config_type_5 = GoogleEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_5
except (TypeError, ValueError, AttributeError, KeyError):
pass
try:
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_6 = VertexEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_6
except (TypeError, ValueError, AttributeError, KeyError):
pass
if not isinstance(data, dict):
raise TypeError()
componentsschemas_index_embedder_config_type_6 = AntflyEmbedderConfig.from_dict(data)
componentsschemas_index_embedder_config_type_7 = AntflyEmbedderConfig.from_dict(data)

return componentsschemas_index_embedder_config_type_6
return componentsschemas_index_embedder_config_type_7

embedder = _parse_embedder(d.pop("embedder", UNSET))

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ class GeneratorProvider(StrEnum):
GEMINI = "gemini"
OLLAMA = "ollama"
OPENAI = "openai"
OPENROUTER = "openrouter"
VERTEX = "vertex"

def __str__(self) -> str:
Expand Down
Loading
Loading