Skip to content

ellmer 0.1.1

Latest
Compare
Choose a tag to compare
@hadley hadley released this 07 Feb 03:18

Lifecycle changes

  • option(ellmer_verbosity) is no longer supported; instead use the standard
    httr2 verbosity functions, such as httr2::with_verbosity(); these now
    support streaming data.

  • chat_cortex() has been renamed chat_cortex_analyst() to better
    disambiguate it from chat_snowflake() (which also uses "Cortex")
    (#275, @atheriel).

New features

  • All providers now wait for up to 60s to get the complete response. You can
    increase this with, e.g., option(ellmer_timeout_s = 120) (#213, #300).

  • chat_azure(), chat_databricks(), chat_snowflake(), and
    chat_cortex_analyst() now detect viewer-based credentials when running on
    Posit Connect (#285, @atheriel).

  • chat_deepseek() provides support for DeepSeek models (#242).

  • chat_openrouter() provides support for models hosted by OpenRouter (#212).

  • chat_snowflake() allows chatting with models hosted through Snowflake's
    Cortex LLM REST API
    (#258, @atheriel).

  • content_pdf_file() and content_pdf_url() allow you to upload PDFs to
    supported models. Models that currently support PDFs are Google Gemini and
    Claude Anthropic. With help from @walkerke and @andrie (#265).

Bug fixes and minor improvements

  • Chat$get_model() returns the model name (#299).

  • chat_azure() has greatly improved support for Azure Entra ID. API keys are
    now optional and we can pick up on ambient credentials from Azure service
    principals or attempt to use interactive Entra ID authentication when
    possible. The broken-by-design token argument has been deprecated (it
    could not handle refreshing tokens properly), but a new credentials
    argument can be used for custom Entra ID support when needed instead
    (for instance, if you're trying to use tokens generated by the AzureAuth
    package) (#248, #263, #273, #257, @atheriel).

  • chat_azure() now reports better error messages when the underlying HTTP
    requests fail (#269, @atheriel). It now also defaults to
    api_version = "2024-10-21" which includes data for structured data
    extraction (#271).

  • chat_bedrock() now handles temporary IAM credentials better
    (#261, @atheriel) and chat_bedrock() gains api_args argument (@billsanto, #295).

  • chat_databricks() now handles the DATABRICKS_HOST environment variable
    correctly whether it includes an HTTPS prefix or not (#252, @atheriel).
    It also respects the SPARK_CONNECT_USER_AGENT environment variable when
    making requests (#254, @atheriel).

  • chat_gemini() now defaults to using the gemini-2.0-flash model.

  • print(Chat) no longer wraps long lines, making it easier to read code
    and bulleted lists (#246).