AI-901: Generative AI Apps & Agents (Foundry)

Generative AI Apps & Agents (Foundry) is one of the skill areas tested on the Azure AI Fundamentals (Foundry refresh) (AI-901) exam. Below are free AI-901 practice questions with worked answers and a concept diagram — each with a plain-language explanation. Practice the first 10 questions of AI-901 free, no signup.

The concept, in one picture

Concept flowHow a generative-AI app is built
How a generative-AI app is builtPromptthe user's request + instructionsModel (LLM)GPT model reasons over the promptGrounding / RAGadd your data via Azure AI SearchAgent + toolscall functions, APIs, code to actResponsegrounded answer or completed task

2 free AI-901 Generative AI Apps & Agents (Foundry) questions

Sample AI-901 question

For each of the following statements, select Yes if the statement is true. Otherwise, select No. NOTE: Each correct selection is worth one point.

  • In Microsoft Foundry Agent Service, a tool_choice value of auto lets the agent decide on its own whether to invoke a tool.Yes
  • In Microsoft Foundry Agent Service, a tool_choice value of none still allows the model to choose whether to invoke a tool.No
  • In Microsoft Foundry Agent Service, a tool_choice value of required forces the agent to invoke at least one tool on every run.Yes
Explanation

The tool_choice setting in Microsoft Foundry Agent Service determines whether and how an agent calls tools. With auto, the agent or model decides for itself whether to call a tool, so statement 1 is true. With none, the model is blocked from calling any tool rather than left to choose, so statement 2 is false. With required, the agent is compelled to call at least one tool on each run, so statement 3 is true.

Sample AI-901 question

You are building an app that pulls fields out of PDFs with Azure Content Understanding in Foundry Tools. Using the Python SDK, you must submit a PDF for analysis and then obtain the extracted results. What should you do?

  • Send the PDF to an analyzer and read the output from the HTTP response headers.
  • Invoke begin_analyze() and then call poller.result() to obtain the results.
  • Run OCR to pull text from the PDF and hand-map the fields in your own code.
  • Invoke analyze() to get all extracted fields back synchronously in the same call.
Explanation

In the Python SDK, Azure Content Understanding analysis is a long-running operation. Calling begin_analyze() starts the operation and returns a poller (an LROPoller), and calling poller.result() waits for and returns the extracted results, so that is the correct workflow. Results are not read from HTTP response headers; the task calls for Azure Content Understanding rather than a hand-built OCR mapping pipeline; and the SDK follows an asynchronous long-running pattern, not a single synchronous analyze() call that returns everything at once.

Practice AI-901 free

The first 10 questions of every exam are free. No signup, no email wall.

Start practicing →

Get a free AI-901 study plan by email

A short plan to work through AI-901 by skill area, plus a note when we add new questions. Optional — the practice above stays free. No spam, unsubscribe anytime.

More AI-901 skill areas