Medium AIP-C01 practice questions
Applied — put a concept to work in a realistic situation. 102 medium questions available — no sign-up, always free.
A developer is building a Bedrock Agent that lets employees check the status of internal support tickets by asking natural-language questions. The developer defines an action group backed by a Lambda function and provides an OpenAPI schema describing a getTicketStatus operation with a required ticketId string parameter. During testing, the agent correctly identifies user intent but the Lambda receives an empty parameter list and cannot resolve the ticket. What is the MOST likely cause and correct fix?
A developer is building a Bedrock Agent for a travel booking company. The agent must be able to call three business functions: search flights, check baggage policy, and cancel a reservation. The developer has written a Lambda function that implements all three operations. During testing, the agent frequently invokes the wrong operation or passes incomplete parameters to the Lambda function. The action group is configured with an OpenAPI schema, but the operation descriptions are terse (e.g., 'searches flights') and parameters lack descriptions. What is the MOST effective change to improve the agent's tool selection and parameter extraction accuracy?
A retail company is building a customer-service application that uses a foundation model through the Bedrock Converse API. Before each user message reaches the model, the team must normalize product SKUs (strip whitespace, uppercase them, and expand known abbreviations) and inject the current promotional catalog into the system prompt. The catalog changes several times per day and is fetched from a DynamoDB table. The team wants the cleanest, most maintainable architecture that keeps this logic out of the client and applies it consistently to every request. Which approach best meets these requirements?
A financial analytics team is building a Bedrock Agent that lets analysts ask natural-language questions about uploaded CSV files, such as 'calculate the 90-day moving average of these transactions and plot the trend.' The agent must dynamically write and execute Python to perform statistical computations and generate charts on the uploaded data, without the team pre-building an action group for every possible calculation. Which approach best satisfies this requirement?
A financial services company builds a customer-support chatbot on Amazon Bedrock Agents. They attach a Bedrock Guardrail that blocks requests for individualized investment advice. When a customer asks 'Which specific stocks should I buy right now?', the guardrail intervenes and blocks the input. The product team wants the chatbot to respond with a compliant, branded message that redirects the user to a licensed advisor, rather than returning the generic default block message. Which approach correctly customizes this behavior?
A retail company is building a customer-support application using Amazon Bedrock. Instead of a full agent, they want a synchronous request/response flow where an API Gateway REST endpoint invokes a Lambda function that calls Bedrock. The application prompt includes a large, static 4,000-token product catalog reference section that is identical across all customer requests, followed by a short dynamic user question. The team observes that per-request latency and input-token costs are unnecessarily high because the large static context is re-processed on every InvokeModel call. Which approach most directly reduces both cost and latency for the repeated static portion?
A financial advisory startup builds a customer support assistant using Amazon Bedrock Agents. Users interact across multiple sessions over several days, and the business requires the agent to remember key facts from earlier conversations (such as a customer's stated risk tolerance) so that follow-up sessions feel continuous. The team already uses session state for within-conversation context, but that context is lost once a session ends. Which approach most directly satisfies the requirement with the least custom development?
A financial services company is building a customer support assistant using Amazon Bedrock Agents. The workflow requires three specialized capabilities: a billing-inquiry agent that queries an internal API, a fraud-detection agent that runs risk scoring, and a general-FAQ agent backed by a knowledge base. A single request may need to route to one or coordinate across multiple of these specialists depending on the customer's intent. The team wants to minimize custom orchestration code in Lambda and let Bedrock handle intent routing and delegation between the specialized agents. Which approach best meets these requirements?
A developer is building a customer-support application that uses the Amazon Bedrock InvokeModel API directly (not Bedrock Agents). Support requests arrive in six languages and must be classified into one of four ticket categories. The team maintains a prompt template stored in Bedrock Prompt Management with a placeholder for the incoming message. Business analysts frequently add new labeled examples to improve classification accuracy, and they want these updates to take effect without requiring a code deployment. Which approach best satisfies this requirement while keeping the classification consistent?
A retail company is building a returns-processing assistant. The workflow requires: (1) validating an order number against a fulfillment API, (2) checking return eligibility based on a business-rules engine, and (3) generating a refund confirmation. The order in which these steps run can vary depending on customer input, and the LLM must decide which tool to invoke next based on intermediate results. The team wants to minimize the amount of custom orchestration code they maintain while still allowing the model to reason dynamically about which action to take. Which implementation approach best fits these requirements?
A developer is building a customer support assistant that must call three internal REST APIs (order lookup, refund status, shipping tracker) based on user intent. The team wants full control over the orchestration loop in their own Lambda code: they will parse the model's tool requests, invoke the APIs themselves, and feed results back to the model in a loop they manage. They do not want AWS to manage the reasoning-and-invocation cycle or maintain agent configuration state. Which Bedrock integration approach best fits these requirements?
A developer is building a customer support automation feature. The workflow must: (1) look up an order status from an internal REST API, (2) if the order is delayed, check a shipping-carrier API for updated ETA, and (3) draft a personalized apology email. The exact sequence of API calls varies depending on the order state and the customer's question, which is free-form natural language. The team wants the foundation model itself to decide which tools to call and in what order, with minimal custom orchestration code. Which implementation approach best fits these requirements?
A financial services company is building a loan pre-approval system. The workflow is fully deterministic: validate applicant data, call a credit-scoring microservice, run a fixed set of eligibility rules, then generate a personalized rejection or approval letter using a Bedrock foundation model. The sequence of steps never changes, and the compliance team requires that every step be auditable and reproducible with explicit branching logic. Which implementation approach best fits these requirements?
A media analytics company needs to generate summaries for a backlog of 4 million archived news articles using Amazon Bedrock. There is no user-facing latency requirement — the job can run overnight or over several days. The team wants to minimize cost per token while processing this large, static dataset. Which approach best meets these requirements?
A media analytics company runs a nightly job that summarizes approximately 500,000 news articles collected during the day. The results are consumed by an internal dashboard the next morning, so there is no real-time requirement — the only constraint is that all summaries must be ready before 7:00 AM. The team currently sends each article through on-demand InvokeModel calls in a tightly parallelized loop, but they are hitting frequent ThrottlingExceptions and their monthly Bedrock bill has become the largest line item in their AWS spend. Which approach best reduces cost while eliminating throttling for this workload?
A financial services company must maintain a complete, tamper-evident audit trail of every Amazon Bedrock model invocation for regulatory review. Compliance auditors need to know which IAM principal invoked which model, from which source IP, and at what time — for both console and API activity. The security team already has CloudTrail enabled capturing management events, but during a test they cannot find any records of InvokeModel calls made by the application. What is the correct action to ensure these invocations are auditable?
A financial services company runs a customer-facing chatbot on Amazon Bedrock protected by a Bedrock Guardrail. The security team wants to be automatically alerted whenever the guardrail blocks a high volume of user inputs within a short window, since a spike may indicate a coordinated jailbreak or prompt-injection attack. They need a near-real-time detection mechanism without building a custom log-parsing pipeline. Which approach best meets this requirement?
A developer is building an internal document-review assistant that lets employees upload a PDF contract and ask questions about its contents in a single request. The team wants to use the Amazon Bedrock Converse API with an Anthropic Claude model. They need the raw document bytes to be passed directly to the model in the conversation turn without first extracting or embedding the text themselves. Which approach correctly implements this using the Converse API?
A developer is building a customer-support chatbot on a Node.js backend using the Amazon Bedrock Converse API with Anthropic Claude. Each browser session is independent, and the backend is a stateless Lambda function behind API Gateway. During testing, the model loses awareness of earlier turns in the same conversation—it cannot reference details the user mentioned two messages ago. The developer confirmed the model itself supports multi-turn context. What is the correct way to preserve conversational context across turns?
A developer is building a customer-support classification service using the Bedrock Converse API with Anthropic Claude. The service must classify incoming messages into one of five fixed categories and return only the category label. During testing, the model occasionally adds explanatory sentences, uses category names not in the approved list, or varies the label casing. The team wants the most reliable way to enforce consistent, constrained output while keeping the solution simple and portable across supported Converse-compatible models. What should the developer do?
A developer is building a customer-support assistant using Amazon Bedrock's Converse API with an Anthropic Claude model. The assistant must call an internal inventory microservice when a user asks about product availability. The developer defines a tool specification with an input schema and passes it in the toolConfig. During testing, the model returns a response, but the application must know when the model wants to invoke the inventory tool versus when it is producing a final answer. How should the application determine that the model is requesting a tool invocation?
A GenAI team runs a customer-facing summarization service on Amazon Bedrock using Anthropic Claude on-demand throughput in us-east-1. During regional promotional events, request volume spikes 4x for a few hours, and the team begins receiving ThrottlingExceptions because they exceed the on-demand requests-per-minute quota in that single region. The workload has no data residency restrictions, and the team wants to absorb these bursts without committing to a fixed hourly cost or re-architecting their application code. What is the MOST cost-effective way to increase available throughput during these spikes?
A media company runs a document summarization service on Amazon Bedrock using Claude on-demand throughput in us-east-1. During peak evening hours, the service processes bursts of user requests and increasingly receives ThrottlingException errors, causing dropped summaries. The workload is latency-sensitive (users wait for results interactively) and cannot tolerate the multi-hour delay of asynchronous processing. Traffic is unpredictable and spiky, so committing to a fixed hourly rate is undesirable. The team wants to increase available throughput headroom with minimal architectural change. Which approach BEST addresses the throttling while fitting the workload's constraints?
A retail company runs a customer-facing product recommendation feature on Amazon Bedrock using Anthropic Claude models via on-demand throughput. During a flash sale, traffic to the recommendation service spikes 5x for roughly 3 hours, and users begin receiving ThrottlingException errors even though the average daily volume is well within the account's default quotas. The team wants to absorb these short, unpredictable bursts without committing to a fixed hourly cost and with minimal code changes. Which approach best meets these requirements?
A data engineering team is preparing a proprietary corpus of 2 million customer support transcripts to fine-tune a foundation model on Amazon Bedrock. During exploratory analysis they discover that roughly 30% of the transcripts are near-duplicates (repeated boilerplate greetings, canned responses, and copy-pasted templates), and a subset contains full credit card numbers embedded in free-text fields. The team wants the fine-tuned model to generalize well and wants to minimize compliance risk before the customization job runs. Which data preparation approach best addresses both concerns?