CCDV-F domain - 33.1% of the exam

Applications and Integration

Applications and Integration is 33.1% of the CCDV-F exam. These are the objectives it covers, each with practice questions, with every answer explained.

The domain in numbers

96
Practice questions
6
Objectives
9
Easy
87
Medium

Where people go wrong

  • Treating max_tokens as a cost or speed control

    The wrong answers lower max_tokens in the hope of cutting the bill or finishing sooner. The limit is a ceiling on output length, so it cuts a summary or answer off part way instead of reducing the work, and it leaves the real cost driver untouched: a realtime request path for bulk work, or a large corpus repeated on input. Cost is changed by the request path and by caching stable input; max_tokens only decides where an answer is cut off.

    See it in a sample question
  • Using wording or temperature where tool_choice is needed

    When a tool call must happen on every request, the wrong answers tighten the prompt, lower the temperature, add retries or raise the output limit. An instruction is advice the model can decline, and temperature only narrows variation in wording, so a measured share of prose-only replies survives. Setting tool_choice makes tool use required on the request, which removes the model's option of answering in text.

    See it in a sample question
  • Swapping the batch and realtime paths

    The wrong answers run in both directions. For an archive of 60,000 items that nobody is waiting on, they fire concurrent realtime requests to finish sooner, which pays the realtime price and meets throughput limits. For a person waiting on a reply, they propose the Message Batches API for its lower price, which lengthens the wait. Batch suits latency-tolerant bulk work; a waiting user needs a realtime request, with streaming for early text.

    See it in a sample question
  • Caching content that is not a stable prefix

    Prompt caching reuses an identical prefix, and the wrong answers apply it to text that changes. One places the cache breakpoint after the user's question, so each request's prefix is unique and never hits. Others cache each article body or each email's attachments, which differ from one request to the next. The breakpoint belongs after the unchanging corpus or handbook and before the varying question; unique content has no later request to reuse it.

    See it in a sample question
  • Working around a capability the assistant still holds

    The wrong answers work around a capability the assistant still holds: a supervising model that reviews proposed refunds, a second model that screens answers for another customer's content, a tenant argument checked against the prompt, a deny list of publishing verbs, or separate conversations for past and live incidents. Each may catch some cases, but the capability stays reachable. The correct answers take it out of reach in code: a pending state for refunds, a tenant from the authenticated session, withheld registry credentials, a removed paging tool.

    See it in a sample question

Objectives in this domain

What to study

The official documents this domain's practice questions cite most.

Sample questions from this domain

Free sampleApplications and Integrationmedium

A compliance team must summarise 60,000 archived support transcripts. Nobody waits on the result, the team has until the end of the week, and the stated requirement is the lowest cost per transcript. A developer proposes firing 60,000 concurrent realtime requests to finish sooner. Which approach best satisfies the stated requirement?

  • AKeep the realtime requests but raise concurrency further, since finishing the job sooner is what reduces the total cost of the run.
  • BKeep the realtime requests and lower max_tokens sharply on each one, so that each summary is cheaper to produce than it would otherwise be.
  • CSubmit the transcripts through the Message Batches API, giving each request its own custom_id, and collect the results when the batch completes. Correct
  • DKeep the realtime requests and enable prompt caching on the transcript body of each request, so that repeated content is charged at the cached rate.
Choose the batch path for large, uniform, latency-tolerant workloads and the realtime path when a user is blocked on the answer. The deciding constraint is that no user is waiting and cost per unit is the stated goal. Asynchronous batch submission trades latency for a lower per-token rate, so it wins on exactly the axis the team named, while parallel realtime calls only compress wall-clock time at the same price.

Why A is wrong: It is tempting because wall-clock time and spend feel linked, but concurrency changes only how fast the same per-token charges accrue, so cost per transcript is unchanged.

Why B is wrong: It looks like a cost lever, but max_tokens is an upper bound that truncates a long answer rather than a discount, so it damages summaries without addressing the rate paid.

Why C is correct: Correct: the workload is large, uniform and latency tolerant, which is exactly the shape the batch path exists for, and it is charged at a lower rate than equivalent realtime calls.

Why D is wrong: Caching is a real cost control, but it pays off on a stable shared prefix, and each transcript here is unique content that no later request reuses.

Free sampleApplications and Integrationmedium

A claims intake service must return a structured record for every submitted claim, and it exposes one tool that writes that record. Over 2,000 live submissions, 9 per cent of requests returned a prose reply with no tool call at all, and the downstream system received nothing for those claims. The requirement is that a tool call is produced on every request. Which change removes the measured failure?

  • ARaise max_tokens on the request, so the model has enough room to emit the tool call rather than stopping after its prose preamble.
  • BLower the temperature on the request, so the model behaves more deterministically and consistently selects the tool it has been given.
  • CSet tool_choice so that the request requires a tool call, which makes the tool invocation part of the request contract rather than a decision the model makes each time. Correct
  • DAdd a firmly worded system-prompt instruction stating that the tool must be called on every claim, and repeat the instruction at the end of the user message.
Use tool_choice to require a tool call when the application depends on one, rather than instructing the model to call it. The failure is that tool use is being left to the model's judgement on each request, so some share of requests reasonably answer in prose. tool_choice is the request-level control over that decision: it can leave tool use optional or require that a tool call be produced. Moving the requirement into the request contract makes the outcome a property of the API call rather than a behaviour that has to be coaxed, which is what takes the failure rate to zero.

Why A is wrong: Truncation is a real cause of missing content and worth ruling out, but the failing responses end in prose rather than being cut short, so a larger output cap changes nothing about whether a tool is chosen.

Why B is wrong: Lower temperature does reduce variation in wording and is a common reflex for inconsistent behaviour, but it biases sampling rather than constraining the response shape, so a share of prose-only replies survives.

Why C is correct: tool_choice controls whether tool use is optional or required, so requiring it removes the model's discretion and guarantees the structured call the downstream system depends on.

Why D is wrong: Clear instructions do raise compliance and are cheap to try, but an instruction is guidance rather than a constraint, which leaves a residual failure rate instead of removing it.

Free sampleApplications and Integrationmedium

A legal assistant sends a long, unchanging policy corpus at the head of every request, followed by the user's question. Spend per request is over the team's stated ceiling and the corpus cannot be shortened. An engineer enables prompt caching but places the cache breakpoint after the user's question. Requests stay expensive. What explains this and what should change?

  • ACaching applies only to output tokens, so a request dominated by input can never benefit; the team should shorten its answers to bring spend under the ceiling.
  • BCaching is a latency feature rather than a cost feature, so the team should accept the spend and instead measure the improvement in time to first token.
  • CThe corpus must be resent as a tool result rather than as leading context, because only tool results are eligible to be marked as cacheable content.
  • DThe cached segment must end before the varying content, so the breakpoint should sit after the policy corpus and before the user's question in every request. Correct
Place a cache breakpoint so that everything before it is identical on every request, keeping variable content outside the cached prefix. A cache entry is keyed on the exact content preceding the breakpoint. Putting the breakpoint after the user's question makes the marked prefix different on every call, so nothing is ever reused. Moving it to sit between the stable corpus and the variable question makes the corpus itself the reusable part.

Why A is wrong: It sounds plausible because output tokens cost more per token, but caching operates on the input prefix, and shortening answers leaves the expensive corpus paid for in full every time.

Why B is wrong: Faster prefill is a real side effect, which makes this tempting, but the primary reason to cache a large stable prefix is that reused input is charged at a reduced rate.

Why C is wrong: It sounds like a mechanism-level fix, but there is no such restriction on where cacheable content sits, and moving the corpus does nothing about a breakpoint that follows varying text.

Why D is correct: Correct: a cache hit requires the marked prefix to be byte-identical across requests, which the corpus is and the question is not, so the breakpoint belongs between them.

Free sampleApplications and Integrationmedium

A retail operations assistant can issue refunds through a tool that moves money. Policy states that a refund above 500 pounds must be approved by a named supervisor before it is issued, and an audit found four unapproved high-value refunds issued last quarter despite a system prompt instruction telling the assistant to seek approval first. The requirement is that no such refund can be issued without a recorded approval. Which design meets it?

  • AStrengthen the system prompt wording, requiring the assistant to state the approving supervisor's name in its reply before it invokes the refund tool for any high-value case.
  • BSplit the work so a supervising agent reviews each refund the worker agent proposes and passes on only those it judges to be within policy for the customer in question.
  • CLog every refund the assistant issues with its amount and reasoning, and have a supervisor review that log each morning and reverse anything that breached the stated threshold.
  • DHave the refund tool record the request as pending above the threshold and release the payment only after the application receives a supervisor approval, returning the pending state to the assistant. Correct
Enforce a human approval checkpoint in the tool implementation, not in prompt wording, when an action must not occur without it. A model decides whether to request a tool call, but the application decides what a tool call actually does. Placing the threshold test and the wait for approval inside the tool means the irreversible step is gated by code, so a model that ignores the instruction still cannot cause the payment to be made.

Why A is wrong: Tempting because clearer wording usually improves adherence, but an instruction is guidance the model can fail to follow, which is exactly what the four audited refunds already demonstrated.

Why B is wrong: Tempting because a second reviewer looks like an approval step, but the reviewer is another model rather than the named supervisor, so no human approval is recorded and the check stays probabilistic.

Why C is wrong: Tempting because it produces a genuine audit trail with human review, but the money has already moved by then, so it detects breaches instead of preventing them as the requirement demands.

Why D is correct: Correct because the threshold test and the pause live in application code the assistant cannot bypass, so the payment cannot leave the system until a recorded approval exists.

Other domains in this exam

See also the CCDV-F cert hub, the study guide, and the cheat sheet.

Examworthy is not affiliated with or endorsed by Anthropic. Original, blueprint-aligned practice material only.