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
2 changes: 1 addition & 1 deletion config/config.exs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ config :solum,
# LLM defaults
default_model: "claude-sonnet-4-20250514",
default_provider: :anthropic,
compaction_model: "claude-3-5-haiku-20241022",
compaction_model: "claude-sonnet-4-20250514",
compaction_threshold: 0.75,

# Persistence — XDG data dir, overridable via runtime.exs or env
Expand Down
2 changes: 1 addition & 1 deletion lib/solum/command_handler.ex
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,7 @@ defmodule Solum.CommandHandler do

defp format_legacy_models do
providers = list_legacy_providers()
builtin = ["claude-sonnet-4-20250514", "claude-opus-4-20250514", "claude-3-5-haiku-20241022"]
builtin = ["claude-sonnet-4-20250514", "claude-opus-4-20250514", "claude-sonnet-4-20250514"]

builtin_lines = Enum.map(builtin, &" #{&1}")
builtin_section = "Built-in models:\n" <> Enum.join(builtin_lines, "\n")
Expand Down
4 changes: 2 additions & 2 deletions lib/solum/context/policy.ex
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ defmodule Solum.Context.Policy do
defstruct raw_retention_minutes: 30,
l1_compaction_interval_minutes: 10,
l2_compaction_interval_minutes: 60,
compaction_model: "claude-3-5-haiku-20241022",
compaction_model: "claude-sonnet-4-20250514",
max_hud_tokens: 8000,
recent_events_limit: 1000,
pin_retention: :session
Expand Down Expand Up @@ -46,7 +46,7 @@ defmodule Solum.Context.Policy do
raw_retention_minutes: 30,
l1_compaction_interval_minutes: 10,
l2_compaction_interval_minutes: 60,
compaction_model: "claude-3-5-haiku-20241022",
compaction_model: "claude-sonnet-4-20250514",
max_hud_tokens: 8000,
recent_events_limit: 1000,
pin_retention: :session
Expand Down
4 changes: 2 additions & 2 deletions lib/solum/memory/extractor.ex
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ defmodule Solum.Memory.Extractor do
Extract memories from a batch of conversation messages.

Options:
- `:model` - LLM model to use (default: "claude-3-5-haiku-20241022")
- `:model` - LLM model to use (default: "claude-sonnet-4-20250514")
- `:min_importance` - Skip memories below this threshold (default: 0.3)
"""
def extract_from_messages(messages, opts \\ []) when is_list(messages) do
Expand Down Expand Up @@ -259,7 +259,7 @@ defmodule Solum.Memory.Extractor do

defp default_model do
config = get_extraction_config()
Keyword.get(config, :model, "claude-3-5-haiku-20241022")
Keyword.get(config, :model, "claude-sonnet-4-20250514")
end

defp default_min_importance do
Expand Down
15 changes: 7 additions & 8 deletions lib/solum/onboarding/steps/models.ex
Original file line number Diff line number Diff line change
Expand Up @@ -130,11 +130,11 @@ defmodule Solum.Onboarding.Steps.Models do
defp get_default_models("anthropic") do
{
# Primary: Most capable
"claude-3-5-sonnet-20241022",
"claude-sonnet-4-20250514",
# Compaction: Fast and efficient
"claude-3-haiku-20240307",
# Learning: Same as primary
"claude-3-5-sonnet-20241022"
"claude-sonnet-4-20250514"
}
end

Expand Down Expand Up @@ -163,16 +163,15 @@ defmodule Solum.Onboarding.Steps.Models do
defp get_default_models(_provider) do
# Fallback defaults
{
"claude-3-5-sonnet-20241022",
"claude-sonnet-4-20250514",
"claude-3-haiku-20240307",
"claude-3-5-sonnet-20241022"
"claude-sonnet-4-20250514"
}
end

defp get_available_models("anthropic") do
[
"claude-3-5-sonnet-20241022",
"claude-3-5-haiku-20241022",
"claude-sonnet-4-20250514",
"claude-3-opus-20240229",
"claude-3-sonnet-20240229",
"claude-3-haiku-20240307"
Expand Down Expand Up @@ -208,10 +207,10 @@ defmodule Solum.Onboarding.Steps.Models do
["default"]
end

defp get_model_description("claude-3-5-sonnet-20241022"),
defp get_model_description("claude-sonnet-4-20250514"),
do: "Most capable Claude model, excellent for complex reasoning"

defp get_model_description("claude-3-5-haiku-20241022"),
defp get_model_description("claude-sonnet-4-20250514"),
do: "Fast Claude model, good for quick responses"

defp get_model_description("claude-3-opus-20240229"),
Expand Down
8 changes: 4 additions & 4 deletions test/solum/context/policy_test.exs
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ defmodule Solum.Context.PolicyTest do
assert policy.raw_retention_minutes == 30
assert policy.l1_compaction_interval_minutes == 10
assert policy.l2_compaction_interval_minutes == 60
assert policy.compaction_model == "claude-3-5-haiku-20241022"
assert policy.compaction_model == "claude-sonnet-4-20250514"
assert policy.max_hud_tokens == 8000
assert policy.recent_events_limit == 1000
assert policy.pin_retention == :session
Expand All @@ -26,7 +26,7 @@ defmodule Solum.Context.PolicyTest do
assert policy.raw_retention_minutes == 30
assert policy.l1_compaction_interval_minutes == 10
assert policy.l2_compaction_interval_minutes == 60
assert policy.compaction_model == "claude-3-5-haiku-20241022"
assert policy.compaction_model == "claude-sonnet-4-20250514"
assert policy.max_hud_tokens == 8000
assert policy.recent_events_limit == 1000
assert policy.pin_retention == :session
Expand All @@ -49,7 +49,7 @@ defmodule Solum.Context.PolicyTest do
# Default values remain
assert policy.raw_retention_minutes == 30
assert policy.l1_compaction_interval_minutes == 10
assert policy.compaction_model == "claude-3-5-haiku-20241022"
assert policy.compaction_model == "claude-sonnet-4-20250514"
end

test "ignores unknown keys with warning" do
Expand Down Expand Up @@ -112,7 +112,7 @@ defmodule Solum.Context.PolicyTest do

# Other fields unchanged
assert merged.recent_events_limit == 1000
assert merged.compaction_model == "claude-3-5-haiku-20241022"
assert merged.compaction_model == "claude-sonnet-4-20250514"
end)

assert log_output =~ "ignoring unknown keys"
Expand Down