Skip to content

Releases: epam/ai-dial-sdk

0.15.0

18 Nov 10:15
Compare
Choose a tag to compare

Features

  • api: added a new type of tool in chat completion request. These tools have a static configuration and are distinguished from the regular tools by the type static_function (#184)
  • supported a heartbeat feature for chat completion handlers. When enabled, SDK periodically sends heartbeat responses as a part of a streaming response (#175)

Fixes

  • fixed sharing issues in the algorithm that merges chat completion streaming chunks (#183)
  • allowed empty strings in Attachment.url and Attachment.data fields (#171)

Other

  • bumped epam/ai-dial-ci from 1.9.1 to 1.9.2 (#168)
  • bumped epam/ai-dial-ci from 1.9.2 to 1.9.4 (#177)
  • bumped langchain from 0.3.0 to 0.3.7 in /examples/langchain_rag (#181)
  • bumped starlette from 0.36.3 to 0.40.0; fastapi from 0.109.2 to 0.115.2 (#170)
  • bumped dependency versions in langchain_rag example (#180)
  • refactored streaming logic (#173)

0.14.0

10 Oct 12:48
Compare
Choose a tag to compare

Features

  • introduced content parts to the type of the request user message content (#164)

Other

  • bump langchain from 0.2.9 to 0.2.10 in /examples/langchain_rag (#162)

0.13.0

03 Sep 15:30
Compare
Choose a tag to compare

Deprecations

  • helper methods for various errors were deprecated, and their roles are now performed by the corresponding exception classes. For example, the call to the request_validation_error("error message") function can be replaced with the raise RequestValidationError("error message") exception class. The methods will be available until the next major release (#160).

Features

  • introduced exception classes for various errors (#160)

0.12.0

02 Sep 21:37
Compare
Choose a tag to compare

Features

  • added original_request to the Request class (#158)

0.11.0

30 Aug 13:42
Compare
Choose a tag to compare

Features

  • added helpers for various exceptions including a prompt truncation error (#151)
  • parameters field of tool spec is made optional (#149)
  • passing status_code via code field in DIALException (#155)
  • supported extensible routes (#133)

Other

  • bump aiohttp from 3.9.4 to 3.10.2 (#152, #153, #154)
  • bump langchain-community in /examples/langchain_rag (#145)
  • bumped langchain-community from 0.2.7 to 0.2.9 (#145, #150)
  • migrated examples to latest SDK (#134)

0.10.1

06 Aug 10:20
Compare
Choose a tag to compare

Fixes

  • relaxed version constraints on httpx to >=0.25.0,<1.0 (#146)

0.10.0

24 Jul 13:43
Compare
Choose a tag to compare

Features

  • added base64 str as embedding representation in the response (#138)
  • added custom_input for multi-modal embeddings (#137)
  • added missing fields to the chat completion request (#141)
  • added propagating Autorization header along with Api-Key header (#135)
  • inherited all Enums from str to make JSON serialization possible (#132)
  • supported embeddings API (#108)
  • supported stages in the chat completions request (#130)

Other

  • bumped epam/ai-dial-ci from 1.8.3 to 1.9.0 (#142)
  • bumped setuptools from 68.2.2 to 70.0.0 (#136)
  • enabled model-installation in poetry (#129)
  • enabled tests for python 3.12 (#117)

0.9.0

12 Jul 09:13
Compare
Choose a tag to compare

Deprecations

  • renamed propagation_auth_headers to propagate_auth_headers. The old parameter will be available until the next major release (#125)

Features

  • added DIAL_SDK_LOG env var to control log level (#126)
  • allowed to close a stage within its with-block (#121)
  • hid api_key and jwt request headers behind SecretStr (#123)
  • added filtering out health checks from logs (#99)
  • supported configuration parameter for the chat completion request (#114, #127, #128)
  • supported attachment argument in add_attachment methods (#120)
  • supported httpx in header propagation (#118)
  • supported writable stages/choices (#122)
  • migrated langchain rag example to latest langchain and openai libs (#106)

Fixes

  • index fields are removed in non-streaming mode (#110)

Other

  • bumped aiohttp from 3.9.2 to 3.9.4 (#94)
  • bumped certifi from 2023.7.22 to 2024.7.4 (#119)
  • bumped epam/ai-dial-ci from 1.8.0 to 1.8.1 (#102)
  • bumped idna from 3.4 to 3.7 (#93)
  • bumped pydantic from 2.3.0 to 2.4.0 (#97)
  • bumped urllib3 from 2.0.7 to 2.2.2 (#105)
  • bumped zipp from 3.17.0 to 3.19.1 (#124)
  • bumped requests from 2.31.0 (yanked) to 2.32.3 (#104)
  • migrated opentelemetry-exporter-prometheus from 1.12.0rc1 (yanked) to 0.41b0 (#103)

0.8.0

08 Apr 16:46
Compare
Choose a tag to compare

Breaking changes

The prometheus export for metrics is disabled by default.

To enable it one needs to either:

  1. manually set prometheus_export=True in MetricsConfig
  2. configure the export via OTEL_METRICS_EXPORTER=prometheus env var

Features

The following OTEL env vars are supported:

  • OTEL_LOGS_EXPORTER - comma-separated list, default - empty list, possible list values: "otlp"
  • OTEL_TRACES_EXPORTER - comma-separated list, default - empty list, possible list values: "otlp"
  • OTEL_METRICS_EXPORTER - comma-separated list, default - empty list, possible list values: "otlp" and "prometheus"
  • OTEL_PYTHON_LOG_CORRELATION - boolean, default - False, if True then logs sent to console are amended with trace_id and span_id
  • OTEL_EXPORTER_PROMETHEUS_PORT - integer, default - 9464, port to bind the prometheus exporter for metrics to

One could turn on the telemetry in the DIAL app configuration:

DIALApp(..., telemetry_config=TelemetryConfig())

and configure the OTEL exporters solely via env vars without the need to change the application code.

When no OTEL env vars are set, the export is disabled.

Other

  • bump black from 23.9.1 to 24.3.0 (#87)
  • bump slash-command-dispatch from 3.0.1 to 4.0.0 (#85)
  • bump pillow from 10.2.0 to 10.3.0 (#89, #90, #91)

0.7.0

22 Feb 16:13
Compare
Choose a tag to compare

Features

  • supported display_message in the error schema and removed Null values from the error messages (#78) (#79)
  • supported tokenize and truncate_prompt endpoints (#50)

Fixes

  • fastapi event listeners with enabled propagation_auth_headers (#56) (#80)