openai-scala-client
openai-scala-client copied to clipboard
Scala client for OpenAI API and other major LLM providers
Recently I moved to newer version of [openai-scala-client](https://github.com/cequence-io/openai-scala-client) and after some time of ridding of deprecated declarations, discovered that my code does not work any more. Later I found that...
Implemented unit tests in openai-core/src/test/scala/io/cequence/openaiscala/service/OpenAIServiceWrapperSpec.scala (#24)
Currently, e.g. `openai-core/src/main/scala/io/cequence/openaiscala/service/OpenAIRetryServiceAdapter.scala` uses injected functions for logging, but this makes it difficult to configure logging in the end application. It might be a good idea to use a standard...
See https://github.com/scala-steward-org/scala-steward.
Various case classes in `io.cequence.openaiscala.domain.response`, including `ModelInfo`, make use of the legacy `java.util.Date` class, which uses mutable state. It is recommended to use the non-mutable classes in `java.time` package. See...
- configured [sbt-ci-release](https://github.com/sbt/sbt-ci-release) plugin to automate publishing to Maven This requires the following [secrets](https://docs.github.com/en/actions/security-guides/encrypted-secrets) to be created: ~~~ PGP_PASSPHRASE PGP_SECRET SONATYPE_PASSWORD SONATYPE_USERNAME ~~~ Obviously I can't test this my end,...
Extract `OpenAIChatToolCompletionService` trait providing just a single method -- `createChatToolCompletion`. Provide `OpenAIAnthropicChatToolCompletionService`. Additionally, OpenAI tool choice is translated to Anthropic AI as an additional user message with encouragement to use...