您的位置 首页 知识分享

AWS Bedrock 知识 – 基础测试脚本

这是一个简单但有用的测试脚本,可帮助您快速测试和验证您的 aws bedrock + kb 设置。如果不同,只…

AWS Bedrock 知识 - 基础测试脚本

这是一个简单但有用的测试脚本,可帮助您快速测试和验证您的 aws bedrock + kb 设置。如果不同,只需更新您的 aws 区域,然后插入您的 bedrock kb id。

import boto3 import json import time from datetime import datetime def test_kb_setup():     """Test function to verify Bedrock Knowledge Base setup and queries"""     # Initialize clients     bedrock_agent = boto3.client('bedrock-agent-runtime', region_name='us-east-1')     bedrock_runtime = boto3.client('bedrock-runtime', region_name='us-east-1')     # Your Knowledge Base ID     kb_id = "**your-knowledge-base-id**"  # Replace with your actual KB ID     def test_kb_query(query_text):         """Test a single knowledge base query"""         print(f" Testing query: '{query_text}'")         print("-" * 50)         try:             # Query the knowledge base             response = bedrock_agent.retrieve(                 knowledgeBaseId=kb_id,                 retrievalQuery={'text': query_text},                 retrievalConfiguration={                     'vectorSearchConfiguration': {                         'numberOfResults': 3                     }                 }             )             # Print raw response for debugging             print(" Raw Response:")             print(json.dumps(response, indent=2, default=str))             # Process and print retrieved results             print(" Processed Results:")             if 'retrievalResults' in response:                 for i, result in enumerate(response['retrievalResults'], 1):                     print(f" Result {i}:")                     print(f"Score: {result.get('score', 'N/A')}")                     print(f"Content: {result.get('content', {}).get('text', 'N/A')}")                     print(f"Location: {result.get('location', 'N/A')}")             else:                 print("No results found in response")             return True         except Exception as e:             print(f"Error during query: {str(e)}")             return False     def test_kb_with_bedrock(query_text):         """Test knowledge base integration with Bedrock"""         print(f" Testing KB + Bedrock integration for: '{query_text}'")         print("-" * 50)         try:             # First get KB results             kb_response = bedrock_agent.retrieve(                 knowledgeBaseId=kb_id,                 retrievalQuery={'text': query_text},                 retrievalConfiguration={                     'vectorSearchConfiguration': {                         'numberOfResults': 3                     }                 }             )             # Format context from KB results             context = ""             if 'retrievalResults' in kb_response:                 context = " ".join([                     f"Reference {i+1}: {result.get('content', {}).get('text', '')} "                     for i, result in enumerate(kb_response['retrievalResults'])                 ])             # Prepare Bedrock prompt             enhanced_prompt = (                 f"Using the following references:  {context}  "                 f"Please answer this question: {query_text} "                 "Base your response on the provided references and clearly cite them when used."             )             # Get Bedrock response             bedrock_response = bedrock_runtime.invoke_model(                 modelId="anthropic.claude-v2",                 body=json.dumps({                     "prompt": f"  Human: {enhanced_prompt}  Assistant:",                     "max_tokens_to_sample": 500,                     "temperature": 0.7,                     "top_p": 1,                 }),                 contentType="application/json",                 accept="application/json",             )             response_body = json.loads(bedrock_response.get('body').read())             final_response = response_body.get('completion', '').strip()             print(" Bedrock Response:")             print(final_response)             return True         except Exception as e:             print(f"Error during KB + Bedrock integration: {str(e)}")             return False     # Run test queries     test_queries = [         "What are our company's remote work policies?",         "Tell me about employee benefits",         "What is the vacation policy?",         "How does the performance review process work?",         "What are the working hours?"     ]     print("Starting Knowledge Base Tests")     print("=" * 50)     # Test 1: Basic KB Queries     print(" Test 1: Basic Knowledge Base Queries")     for query in test_queries:         success = test_kb_query(query)         if not success:             print(f"Failed on query: {query}")     # Test 2: KB + Bedrock Integration     print(" Test 2: Knowledge Base + Bedrock Integration")     for query in test_queries:         success = test_kb_with_bedrock(query)         if not success:             print(f"Failed on integration test: {query}") if __name__ == "__main__":     test_kb_setup() 
登录后复制

以上就是AWS Bedrock 知识 – 基础测试脚本的详细内容,更多请关注php中文网其它相关文章!

本文来自网络,不代表甲倪知识立场,转载请注明出处:http://www.spjiani.cn/wp/4336.html

作者: nijia

发表评论

您的电子邮箱地址不会被公开。

联系我们

联系我们

0898-88881688

在线咨询: QQ交谈

邮箱: email@wangzhan.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部