You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
OpenAI at least seems to have an API call to determine what models are available. Rather than hard-coding the available models, the code should learn what they are at start time.
The text was updated successfully, but these errors were encountered:
I don't want to make network requests when the user's gptel configuration in their init file is loaded. I would be very annoyed if an Emacs package exhibited web-browser-like behavior like this.
Similarly, I don't want to make a network request when the user runs M-x gptel -- this should just open up a buffer.
Moreover, dedicated chat buffers are just one way to use gptel, and for many users it's not even the preferred way. So there is no guarantee M-x gptel will be called. So when should this API call be made?
Model info fetched from most APIs (including OpenAI) does not have all the information we include, such as the costs, cutoff-dates, capabilities and context window sizes. Only some of this information is provided. We show this information as annotations when selecting a model:
In contrast, it is a simple matter to add a model + metadata when OpenAI releases one, usually an interested user makes a pull request to gptel.
If it's not yet in gptel, you can add models to any gptel-backend yourself:
;; Add model to backend:
(push'gemini-2.0-flash-thinking-exp (gptel-backend-models gptel-backend))
;; Add model metadata (OPTIONAL)
(put'gemini-2.0-flash-thinking-exp :description"Gemini model that produces...")
(put'gemini-2.0-flash-thinking-exp :context-window32)
where gptel-backend is the active gptel backend (Gemini in this example). In #529, we're trying to provide a more user-friendly way to do this -- although I think the above is pretty standard if you've used elisp.
(Finding available models automatically is more of a requirement for Ollama, where there is no standard list of models that gptel can track.)
I don't want to make network requests when the user's gptel configuration in their init file is loaded.
Fine, then when the user requests. It seems unreasonable to be writing these things by hand; it means that as new models are deployed you can't automatically keep up.
OpenAI at least seems to have an API call to determine what models are available. Rather than hard-coding the available models, the code should learn what they are at start time.
The text was updated successfully, but these errors were encountered: