donobu
Version:
Create browser automations with an LLM agent and replay them as Playwright scripts.
37 lines • 1.65 kB
TypeScript
import { GptClient, ToolOption } from './GptClient';
import { JSONSchema7 } from 'json-schema';
import { GptMessage, AssistantMessage, StructuredOutputMessage, ProposedToolCallsMessage } from '../models/GptMessage';
import { AnthropicAwsBedrockConfig } from '../models/GptConfig';
/**
* A GPT client implemented using AWS Bedrock for Anthropic models.
* @see https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters-anthropic-claude.html
*/
export declare class AnthropicAwsBedrockGptClient extends GptClient {
private readonly anthropicAwsBedrockConfig;
private static readonly MAX_TOKENS;
private readonly bedrockClient;
/**
* Create a new instance.
*/
constructor(anthropicAwsBedrockConfig: AnthropicAwsBedrockConfig);
ping(): Promise<void>;
getMessage(messages: GptMessage[]): Promise<AssistantMessage>;
getStructuredOutput(messages: GptMessage[], jsonSchema: JSONSchema7): Promise<StructuredOutputMessage>;
getToolCalls(messages: GptMessage[], tools: ToolOption[]): Promise<ProposedToolCallsMessage>;
/**
* Extract system prompt from messages
*/
private extractSystemPrompt;
/**
* Maps AWS SDK errors to our application-specific exceptions
*/
private mapErrorToDonobuException;
/**
* Merges adjacent user messages because Anthropic will reject requests that do not delicately
* flip-flop between "user" and "assistant" roles.
*/
private static shenanigansUserMessageMerge;
private static chatRequestMessageFromGptMessage;
private static toolChoiceFromTool;
}
//# sourceMappingURL=AnthropicAwsBedrockGptClient.d.ts.map