File tree Expand file tree Collapse file tree 2 files changed +12
-7
lines changed
src/askui/models/openrouter Expand file tree Collapse file tree 2 files changed +12
-7
lines changed Original file line number Diff line number Diff line change 1- import os
21from typing import Type
32
43from openai import OpenAI
109from askui .utils .image_utils import ImageSource
1110
1211from .prompts import PROMPT_QA
13- from .settings import OpenRouterSettings
12+ from .settings import OpenRouterAuthSettings , OpenRouterSettings
1413
1514
1615class OpenRouterGetModel (GetModel ):
1716 def __init__ (self , settings : OpenRouterSettings ):
1817 self ._settings = settings
1918
20- _open_router_key = os .getenv ("OPEN_ROUTER_API_KEY" )
21- if _open_router_key is None :
22- error_msg = "OPEN_ROUTER_API_KEY is not set"
23- raise ValueError (error_msg )
19+ _auth_settings = OpenRouterAuthSettings ()
20+ _open_router_key = _auth_settings .api_key .get_secret_value ()
2421
2522 self ._client = OpenAI (
2623 api_key = _open_router_key ,
Original file line number Diff line number Diff line change 1- from pydantic import BaseModel , Field
1+ from pydantic import BaseModel , Field , SecretStr
2+ from pydantic_settings import BaseSettings
23
34
45class OpenRouterSettings (BaseModel ):
56 model : str = Field (..., description = "OpenRouter model name" )
7+
8+
9+ class OpenRouterAuthSettings (BaseSettings ):
10+ api_key : SecretStr = Field (
11+ min_length = 1 ,
12+ validation_alias = "OPEN_ROUTER_API_KEY" ,
13+ )
You can’t perform that action at this time.
0 commit comments