Packages

A library for building stateful chains of LLM interactions!

Current section

Files

Jump to
starflow src starflow@model.erl
Raw

src/starflow@model.erl

-module(starflow@model).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]).
-export([new/1, with_name/2]).
-export_type([model/0]).
-type model() :: {model,
starflow@providers:provider(),
starflow@api_key:api_key(),
binary(),
float(),
integer()}.
-file("/home/ethanthoma/projects/flow/src/starflow/model.gleam", 78).
-spec new(starflow@api_key:api_key()) -> model().
new(Api_key) ->
Provider = erlang:element(2, Api_key),
case Provider of
anthropic ->
{model,
Provider,
Api_key,
<<"claude-3-5-sonnet-20241022"/utf8>>,
0.7,
1024}
end.
-file("/home/ethanthoma/projects/flow/src/starflow/model.gleam", 105).
-spec with_name(model(), binary()) -> model().
with_name(Model, Name) ->
erlang:setelement(4, Model, Name).