Current section
Files
Jump to
Current section
Files
src/glean@models@deepseek_reasoning.erl
-module(glean@models@deepseek_reasoning).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/glean/models/deepseek_reasoning.gleam").
-export([max_output_tokens/2, build/1, reasoner/1, r1/1]).
-export_type([deepseek_reasoning/0]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
?MODULEDOC(
" DeepSeek reasoning models.\n"
"\n"
" Covers DeepSeek-Reasoner and DeepSeek-R1 models.\n"
" Supported parameters: max_output_tokens only.\n"
" These models do not support temperature or top_p.\n"
).
-opaque deepseek_reasoning() :: {deepseek_reasoning,
binary(),
binary(),
gleam@option:option(integer())}.
-file("src/glean/models/deepseek_reasoning.gleam", 42).
?DOC(" Set the maximum number of output tokens.\n").
-spec max_output_tokens(deepseek_reasoning(), integer()) -> deepseek_reasoning().
max_output_tokens(M, N) ->
{deepseek_reasoning, erlang:element(2, M), erlang:element(3, M), {some, N}}.
-file("src/glean/models/deepseek_reasoning.gleam", 51).
?DOC(" Build a `Model` from this DeepSeek Reasoning configuration.\n").
-spec build(deepseek_reasoning()) -> glean@model:model().
build(M) ->
Provider = glean@providers@deepseek:new(
erlang:element(2, M),
erlang:element(3, M)
),
Settings = {model_settings,
erlang:element(4, M),
none,
none,
none,
none,
none,
none,
none},
{model, Provider, Settings}.
-file("src/glean/models/deepseek_reasoning.gleam", 74).
-spec new_deepseek_reasoning(binary(), binary()) -> deepseek_reasoning().
new_deepseek_reasoning(Api_key, Model_id) ->
{deepseek_reasoning, Api_key, Model_id, none}.
-file("src/glean/models/deepseek_reasoning.gleam", 28).
?DOC(" DeepSeek Reasoner\n").
-spec reasoner(binary()) -> deepseek_reasoning().
reasoner(Key) ->
new_deepseek_reasoning(Key, <<"deepseek-reasoner"/utf8>>).
-file("src/glean/models/deepseek_reasoning.gleam", 33).
?DOC(" DeepSeek R1\n").
-spec r1(binary()) -> deepseek_reasoning().
r1(Key) ->
new_deepseek_reasoning(Key, <<"deepseek-r1"/utf8>>).