akashi_openai 0.3.0
akashi_openai: ^0.3.0 copied to clipboard
OpenAI provider adapter for the Akashi agent framework: wraps openai_dart behind Akashi's LanguageModel contract, normalizing streamed content and tool calls into its union.
Changelog #
0.3.0 #
- Coordinated 0.3.0 release (tracks
akashi0.3.0). OpenAIProvider.close()releases the shared HTTP client (a no-op when an external client was injected).- Complete
FinishReasonmapping:tool_calls/function_call→toolCallsandcontent_filter→contentFilter, instead of onlylength-or-stop. - Streaming now honors
request.cancel, stopping the upstream drain on cancellation. - Malformed tool-call arguments are preserved under
_rawrather than silently decoded to an empty map. - Uses the shared
partsToText/encodeToolOutputhelpers fromakashicore.
0.2.0 #
Initial release — OpenAI provider adapter over openai_dart.
OpenAIProvider+OpenAIModel(LanguageModel,StructuredOutputCapablewithjsonSchema/toolMode/promptOnly).- Streaming normalization of OpenAI's index-keyed tool-call argument deltas into
ToolCallStartPart+ToolCallDeltaPart(reassembled by the loop). responseFormat→json_schemaandToolChoice→tool_choicemapping.OpenAIEmbeddingModel+EmbeddingProvider.- Offline tests against a mock HTTP client; a runnable
example/.