fix: pass context to provider for stream data parsing (#1475)

* fix: pass context to provider for stream data parsing

* fix: luatype

---------

Co-authored-by: yetone <yetoneful@gmail.com>
This commit is contained in:
brook hong
2025-03-04 00:20:27 +08:00
committed by GitHub
parent c6d5527ea8
commit 6bd966e8e2
4 changed files with 8 additions and 6 deletions

View File

@@ -28,7 +28,7 @@ function M.build_bedrock_payload(prompt_opts, body_opts)
return model_handler.build_bedrock_payload(prompt_opts, body_opts)
end
function M.parse_stream_data(data, opts)
function M.parse_stream_data(ctx, data, opts)
-- @NOTE: Decode and process Bedrock response
-- Each response contains a Base64-encoded `bytes` field, which is decoded into JSON.
-- The `type` field in the decoded JSON determines how the response is handled.
@@ -37,7 +37,7 @@ function M.parse_stream_data(data, opts)
local jsn = vim.json.decode(bedrock_data_match)
local data_stream = vim.base64.decode(jsn.bytes)
local json = vim.json.decode(data_stream)
M.parse_response({}, data_stream, json.type, opts)
M.parse_response(ctx, data_stream, json.type, opts)
end
end

View File

@@ -57,7 +57,7 @@ function M.parse_messages(opts)
return { messages = messages }
end
function M.parse_stream_data(data, opts)
function M.parse_stream_data(ctx, data, opts)
---@type CohereChatResponse
local json = vim.json.decode(data)
if json.type ~= nil then