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
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ class TextGenerationParameter(StrEnum):
THINKING_LEVEL = "thinking_level"
OUTPUT_SCHEMA = "output_schema"
VERBOSITY = "verbosity"
WEB_SEARCH = "web_search"
X_SEARCH = "x_search"
CODE_EXECUTION = "code_execution"


class TextGenerationParameters(Parameters):
Expand All @@ -25,3 +28,6 @@ class TextGenerationParameters(Parameters):
thinking_level: str | None
verbosity: str | None
output_schema: type[BaseModel] | None
web_search: bool | None
x_search: bool | None
code_execution: bool | None
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
"""Anthropic models for text generation."""

from celeste import Model, Provider
from celeste.constraints import Range, Schema
from celeste.constraints import Bool, Range, Schema
from celeste.core import Parameter
from celeste_text_generation.parameters import TextGenerationParameter

Expand All @@ -15,6 +15,7 @@
Parameter.MAX_TOKENS: Range(min=1, max=64000),
TextGenerationParameter.THINKING_BUDGET: Range(min=-1, max=64000),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -25,6 +26,7 @@
parameter_constraints={
Parameter.MAX_TOKENS: Range(min=1, max=64000),
TextGenerationParameter.THINKING_BUDGET: Range(min=-1, max=32000),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -36,6 +38,7 @@
Parameter.MAX_TOKENS: Range(min=1, max=32000),
TextGenerationParameter.THINKING_BUDGET: Range(min=-1, max=32000),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -47,6 +50,7 @@
Parameter.MAX_TOKENS: Range(min=1, max=64000),
TextGenerationParameter.THINKING_BUDGET: Range(min=-1, max=32000),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -57,6 +61,7 @@
parameter_constraints={
Parameter.MAX_TOKENS: Range(min=1, max=64000),
TextGenerationParameter.THINKING_BUDGET: Range(min=-1, max=64000),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -67,6 +72,7 @@
parameter_constraints={
Parameter.MAX_TOKENS: Range(min=1, max=32000),
TextGenerationParameter.THINKING_BUDGET: Range(min=-1, max=32000),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
]
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@
from celeste_anthropic.messages.parameters import (
ThinkingMapper as _ThinkingMapper,
)
from celeste_anthropic.messages.parameters import (
WebSearchMapper as _WebSearchMapper,
)

from celeste.core import Parameter
from celeste.models import Model
Expand Down Expand Up @@ -58,11 +61,16 @@ class OutputSchemaMapper(_OutputSchemaMapper):
name = TextGenerationParameter.OUTPUT_SCHEMA


class WebSearchMapper(_WebSearchMapper):
name = TextGenerationParameter.WEB_SEARCH


ANTHROPIC_PARAMETER_MAPPERS: list[ParameterMapper] = [
TemperatureMapper(),
MaxTokensMapper(),
ThinkingBudgetMapper(),
OutputSchemaMapper(),
WebSearchMapper(),
]

__all__ = ["ANTHROPIC_PARAMETER_MAPPERS"]
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
"""Google models for text generation."""

from celeste import Model, Provider
from celeste.constraints import Choice, Range, Schema
from celeste.constraints import Bool, Choice, Range, Schema
from celeste.core import Parameter
from celeste_text_generation.parameters import TextGenerationParameter

Expand All @@ -17,6 +17,7 @@
# Flash: allows -1 (dynamic), 0 (disable), or >= 0
TextGenerationParameter.THINKING_BUDGET: Range(min=-1, max=24576),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -32,6 +33,7 @@
min=512, max=24576, special_values=[-1, 0]
),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -47,6 +49,7 @@
min=128, max=32768, special_values=[-1]
),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -59,6 +62,7 @@
Parameter.MAX_TOKENS: Range(min=1, max=65536),
TextGenerationParameter.THINKING_LEVEL: Choice(options=["low", "high"]),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -71,6 +75,7 @@
Parameter.MAX_TOKENS: Range(min=1, max=65536),
TextGenerationParameter.THINKING_LEVEL: Choice(options=["low", "high"]),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
]
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,9 @@
from celeste_google.generate_content.parameters import (
ThinkingLevelMapper as _ThinkingLevelMapper,
)
from celeste_google.generate_content.parameters import (
WebSearchMapper as _WebSearchMapper,
)

from celeste.core import Parameter
from celeste.parameters import ParameterMapper
Expand All @@ -41,12 +44,17 @@ class OutputSchemaMapper(_OutputSchemaMapper):
name = TextGenerationParameter.OUTPUT_SCHEMA


class WebSearchMapper(_WebSearchMapper):
name = TextGenerationParameter.WEB_SEARCH


GOOGLE_PARAMETER_MAPPERS: list[ParameterMapper] = [
TemperatureMapper(),
MaxTokensMapper(),
ThinkingBudgetMapper(),
ThinkingLevelMapper(),
OutputSchemaMapper(),
WebSearchMapper(),
]

__all__ = ["GOOGLE_PARAMETER_MAPPERS"]
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
"""Mistral models for text generation."""

from celeste import Model, Provider
from celeste.constraints import Range, Schema
from celeste.constraints import Bool, Range, Schema
from celeste.core import Parameter
from celeste_text_generation.parameters import TextGenerationParameter

Expand All @@ -15,6 +15,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -26,6 +27,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -37,6 +39,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -48,6 +51,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -59,6 +63,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -70,6 +75,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -81,6 +87,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -92,6 +99,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -103,6 +111,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -114,6 +123,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -125,6 +135,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -136,6 +147,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -147,6 +159,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -158,6 +171,7 @@
Parameter.TEMPERATURE: Range(min=0.0, max=2.0, step=0.01),
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -170,6 +184,7 @@
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.THINKING_BUDGET: Range(min=-1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
Model(
Expand All @@ -182,6 +197,7 @@
Parameter.MAX_TOKENS: Range(min=1, max=32768, step=1),
TextGenerationParameter.THINKING_BUDGET: Range(min=-1, max=32768, step=1),
TextGenerationParameter.OUTPUT_SCHEMA: Schema(),
TextGenerationParameter.WEB_SEARCH: Bool(),
},
),
]
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
from celeste_mistral.chat.parameters import (
TemperatureMapper as _TemperatureMapper,
)
from celeste_mistral.chat.parameters import (
WebSearchMapper as _WebSearchMapper,
)

from celeste.core import Parameter
from celeste.models import Model
Expand Down Expand Up @@ -62,11 +65,16 @@ class OutputSchemaMapper(_OutputSchemaMapper):
name = TextGenerationParameter.OUTPUT_SCHEMA


class WebSearchMapper(_WebSearchMapper):
name = TextGenerationParameter.WEB_SEARCH


MISTRAL_PARAMETER_MAPPERS: list[ParameterMapper] = [
TemperatureMapper(),
MaxTokensMapper(),
ThinkingBudgetMapper(),
OutputSchemaMapper(),
WebSearchMapper(),
]

__all__ = ["MISTRAL_PARAMETER_MAPPERS"]
Loading
Loading