Skip to content

Commit 7d44244

Browse files
refactor: read the OpenRouter model name from env via settings
1 parent 0ee4ca6 commit 7d44244

4 files changed

Lines changed: 9 additions & 7 deletions

File tree

config/settings.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -655,6 +655,8 @@
655655
BOOST_BRANCHES = ["master", "develop"]
656656
OPENROUTER_URL = "https://openrouter.ai/api/v1"
657657
OPENROUTER_API_KEY = env("OPENROUTER_API_KEY")
658+
SUMMARIZATION_MODEL = env("SUMMARIZATION_MODEL", default="gpt-oss-120b")
659+
WHATS_NEW_MODEL = env("WHATS_NEW_MODEL", default="gpt-oss-120b")
658660

659661
ALGOLIA = {
660662
"app_id": env("ALGOLIA_APP_ID", None),

news/tasks.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import structlog
55

66
from config.celery import app
7-
from config.settings import OPENROUTER_API_KEY, OPENROUTER_URL
7+
from config.settings import OPENROUTER_API_KEY, OPENROUTER_URL, SUMMARIZATION_MODEL
88
from news.constants import CONTENT_SUMMARIZATION_THRESHOLD
99
from news.helpers import extract_content
1010
from news.utils import set_video_thumbnail
@@ -105,7 +105,7 @@ def set_summary_for_event_entry(pk: int):
105105
return
106106
logger.info(f"handing off {pk=} to summarize_content task")
107107
summarize_content.apply_async(
108-
(entry.content, entry.title, "gpt-oss-120b"),
108+
(entry.content, entry.title, SUMMARIZATION_MODEL),
109109
link=save_entry_summary_value.s(pk),
110110
)
111111

@@ -130,7 +130,7 @@ def set_summary_for_link_entry(pk: int):
130130

131131
logger.info(f"dispatching summarize task for {pk=} with {content[:40]=}...")
132132
summarize_content.apply_async(
133-
(content, entry.title, "gpt-oss-120b"), link=save_entry_summary_value.s(pk)
133+
(content, entry.title, SUMMARIZATION_MODEL), link=save_entry_summary_value.s(pk)
134134
)
135135

136136

news/views.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -599,7 +599,7 @@ def generate_description(request):
599599

600600
try:
601601
summary = summarize_content(
602-
content, title, "gpt-oss-120b", DESCRIPTION_SUMMARY_MAX_LENGTH
602+
content, title, settings.SUMMARIZATION_MODEL, DESCRIPTION_SUMMARY_MAX_LENGTH
603603
)
604604
except Exception:
605605
logger.exception("generate_description: summarization failed")

versions/tasks.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
from celery import group, chain
1717

1818
from config.celery import app
19-
from config.settings import OPENROUTER_API_KEY, OPENROUTER_URL
19+
from config.settings import OPENROUTER_API_KEY, OPENROUTER_URL, WHATS_NEW_MODEL
2020
from django.conf import settings
2121
from django.core.management import call_command
2222
from django.utils import timezone
@@ -626,10 +626,10 @@ def skip_tag(name, new=False):
626626
# ---------------------------------------------------------------------------
627627

628628

629-
WHATS_NEW_MODEL = "gpt-oss-120b"
630629
# Guardrail to keep the LLM call comfortably under the model's context window
631630
# (gpt-oss-120b is ~131K tokens; ~100K chars leaves headroom for the system
632-
# prompt + output). Inputs above this are truncated.
631+
# prompt + output). Inputs above this are truncated. The model name itself
632+
# is configured via the WHATS_NEW_MODEL setting (env-driven; see settings.py).
633633
WHATS_NEW_MAX_INPUT_CHARS = 100_000
634634

635635
WHATS_NEW_SYSTEM_PROMPT = dedent(

0 commit comments

Comments
 (0)