@sethdouglasford/claude-flow
Version:
Claude Code Flow - Advanced AI-powered development workflows with SPARC methodology
87 lines • 2.37 kB
TypeScript
/**
* AWS Bedrock Client Implementation
* Based on official AWS Bedrock documentation for Anthropic Claude models
*/
export interface BedrockMessage {
role: "user" | "assistant";
content: string | Array<{
type: "text" | "image";
text?: string;
source?: {
type: "base64";
media_type: string;
data: string;
};
}>;
}
export interface BedrockRequest {
anthropic_version: "bedrock-2023-05-31";
max_tokens: number;
messages: BedrockMessage[];
system?: string;
temperature?: number;
top_p?: number;
top_k?: number;
stop_sequences?: string[];
}
export interface BedrockResponse {
id: string;
model: string;
type: "message";
role: "assistant";
content: Array<{
type: "text";
text: string;
}>;
stop_reason: "end_turn" | "max_tokens" | "stop_sequence";
stop_sequence?: string;
usage: {
input_tokens: number;
output_tokens: number;
};
}
export declare class BedrockClient {
private region;
constructor(region?: string);
/**
* Invoke a Claude model on Bedrock using the correct Messages API format
*/
invokeModel(modelId: string, messages: BedrockMessage[], options?: {
max_tokens?: number;
temperature?: number;
top_p?: number;
top_k?: number;
system?: string;
stop_sequences?: string[];
}): Promise<BedrockResponse>;
/**
* Invoke model with streaming response
*/
invokeModelWithStream(modelId: string, messages: BedrockMessage[], options?: {
max_tokens?: number;
temperature?: number;
top_p?: number;
top_k?: number;
system?: string;
stop_sequences?: string[];
onChunk?: (chunk: string) => void;
}): Promise<string>;
/**
* Call the Bedrock API using AWS SDK
*/
private callBedrockAPI;
/**
* Convert simple text prompt to Bedrock Messages format
*/
static createSimpleMessage(prompt: string, role?: "user" | "assistant"): BedrockMessage;
/**
* Check if Bedrock is properly configured
*/
static checkConfiguration(): Promise<{
configured: boolean;
region?: string;
identity?: any;
error?: string;
}>;
}
//# sourceMappingURL=bedrock-client.d.ts.map