← All AI Engineer talks

AI Engineer Europe 2026

What Breaks When You Build AI Under Sovereignty Constraints

Read the talk

What Breaks When You Build AI Under Sovereignty Constraints

Sovereignty becomes an engineering problem when you must control where data moves, replace models, operate infrastructure, and explain what an agent did.

From a talk by Bilge Yücel

Before you start: Familiarity with RAG pipelines, tool-using agents, and hosted versus self-hosted model inference will help you follow the architecture.

What does it mean to operate AI on your own terms?

How much control does your organization actually have over its AI system? Bilge Yücel opens with sovereignty as the organizing question. Introducing herself as a senior developer relations engineer at deepset, she places it in the context of the company behind Haystack and its enterprise platform. She names Airbus, Bosch, Siemens, the European Commission, and German ministries as examples of the organizations deepset serves—settings where control over an application extends beyond choosing its model.

Sovereign AI means being able to design, deploy, and operate AI systems on an organization’s own terms. For an engineer, that becomes explicit control over data flow, model choice, infrastructure, observability, and operations. The useful question is not simply whether a system is sovereign, but which decisions the organization can make and enforce itself.

Definition slide describing sovereign AI and explicit control over data flow, model choice, infrastructure, observability and operations.
Sovereign AI means operating on your own terms, with explicit control over the system.
PillarQuestions to answer
DataWhere is data stored and processed?
ModelsWho controls the running models, and what is known about their training data?
InfrastructureWhere does compute happen?
OperationsIs execution traceable, who can update the system, and who owns incident response?

These boundaries overlap, but each exposes a different dependency. Keeping storage local, for example, says nothing by itself about where inference runs or who can change the application.

0:240:34
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

0:24 · section reference included

Follow data beyond storage, then locate compute

Start with a European organization whose data must remain within a trusted processing boundary. Its database may be in Europe, but sending documents to an embedding API hosted in Virginia moves their processing outside that boundary. Storage location does not determine the whole data path. Yücel frames this through a broad GDPR residency statement; the legal distinction is that EU rules permit international transfers under mechanisms such as adequacy decisions and appropriate safeguards. The endpoint example establishes a boundary crossing, not enough information to establish a GDPR violation.

Geography is only one part of data control. A colleague who can retrieve information they are not authorized to see also breaches the intended boundary, even if every database and model runs in the approved jurisdiction. Access permissions therefore belong in the same analysis as storage and processing locations.

Next, locate the application itself: ingestion, RAG pipelines, agents, and their tools all execute somewhere. Yücel describes infrastructure choices as a spectrum from maximum control to maximum convenience: air-gapped environments, private VPCs, sovereign cloud, and SaaS. Sovereign-cloud properties depend on the provider. The slide’s air-gap/EU AI Act and VPC/GDPR safety labels are simplifications, not compliance guarantees; deployment isolation does not replace the documentation, oversight, and other obligations described in the AI Act guidance.

Provider jurisdiction adds another dimension. European hosting and a provider’s exposure to US legal process are separate questions. In Yücel’s SaaS example, a US-headquartered provider creates a concern even when the application and data remain in Europe. More precisely, the CLOUD Act concerns potential compelled disclosure by providers subject to US jurisdiction of data in their possession or control, regardless of storage location. It does not create unrestricted access merely because a company has US headquarters.

Infrastructure Sovereignty slide showing a spectrum from air-gapped through private cloud, sovereign cloud and hybrid to SaaS, with deployment and jurisdiction notes.
Infrastructure choices span maximum control to maximum convenience.
2:222:42
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

2:22 · section reference included

Make choice usable and operations accountable

Model sovereignty begins with the freedom to choose and switch models. A system that works with only one provider inherits that provider’s outages and price changes. Supporting alternatives in principle is not enough: if switching requires extensive changes to application logic, the organization cannot exercise its choice readily. Swappability is an architectural property, not just a procurement option.

Training-data provenance is a separate concern. Yücel acknowledges that teams often cannot determine which data trained a model. She suggests European providers have an advantage in this context, but a provider’s headquarters does not establish the origin of its training corpus. That uncertainty remains even when inference is under local control.

Operational sovereignty extends control into production. It includes monitoring and evaluating behavior, inspecting model inputs and outputs, and managing both model and application updates in a controlled, auditable way. In Yücel’s HR and finance examples, human oversight is part of that operating model. Building the system is only the beginning; the organization must also be able to maintain and govern it.

The required degree of control varies. A high-stakes finance or healthcare deployment may need an air-gapped environment, while another enterprise or startup may not need the same restrictions across every pillar. The practical task is to identify the control the system actually provides and the vendor dependencies it retains.

4:294:40
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

4:29 · section reference included

A working system must become sovereign

Now consider the Monday-morning request: the organization already has a working AI system, and a manager or CIO asks the team to make it sovereign. The intuitive first move is to replace its frontier API with a self-hosted model. That immediately exposes more than an endpoint dependency. API logic must be adapted, prompts may need revision, and the system’s performance must be evaluated again. Moving inference changes assumptions embedded throughout the application.

Moving private data into the required jurisdiction creates another set of dependencies. What looked like a storage relocation can leave the team operating multiple databases and instances. Retrieval must now decide where to search:

  • Classify and route: determine which database should receive a query before searching.
  • Search multiple databases: send the request to both and gather information from their results.

Either approach introduces application behavior that a single-store design did not need.

Replacing managed infrastructure with an on-premises deployment exposes work the cloud provider previously absorbed. Kubernetes cluster management becomes the team’s responsibility. Hardware constraints become explicit too: the application may run on CPUs while model inference runs on GPUs, requiring network and connection management between them. Changing the deployment boundary changes who owns these operational problems.

Finally, adding observability reveals whether the application was understandable in the first place. An opaque AI layer cannot become auditable merely by attaching a logging destination. The team must identify what happens inside it, decide what to record, and establish version control for the application and the system it operates.

7:097:22
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

7:09 · section reference included

Use orchestration to expose dependencies

Haystack addresses part of this migration through consistent component interfaces. A cloud-backed component can be replaced with one connected to self-hosted inference while preserving the surrounding interface. Yücel describes integration changes as potentially small, leaving the team to concentrate on hardware and connectivity. That is a claim about reducing integration edits, not eliminating prompt evaluation or completing an entire migration automatically. Orchestration cannot supply missing GPU capacity.

The next benefit is explicit data flow. Typed, declared inputs and outputs make it possible to inspect a pipeline definition and follow what moves between components. Agent execution is less deterministic, but its tool calls and tool outputs can still be traced. A changing execution path need not be an invisible one.

Haystack also supports serializing pipeline definitions to YAML. Committing those definitions makes application structure inspectable across revisions: a previous commit shows the configuration that was recorded then. This versions the pipeline definition; it does not, by itself, capture every model weight, external dataset, or dependency needed to reproduce execution. Open-source components add another form of control: teams can inspect, customize, and extend the implementation rather than treating it as a black box.

Why Haystack slide with four boxes labeled Consistent interface, Explicit data flow, Serializable to YAML, and Truly open & extensible.
Haystack highlights consistent interfaces, explicit data flow, YAML serialization and extensibility.
9:449:58
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

9:44 · section reference included

Place controls around the agent

The proposed agent architecture begins with an input guardrail. It checks for prompt injection and, where relevant, whether the request fits the application’s permitted regulatory or task-specific intent. Input classified as unsafe leaves the application path; input classified as safe proceeds to the agent. This is a classification control, not proof that every malicious request will be detected.

The agent combines an LLM, a system prompt, and tools. Those tools can call APIs, search a knowledge base, invoke other agents, or connect through MCP servers. After the agent finishes its work, an output guardrail checks the proposed response for compliance and sensitive-information leakage before it becomes the user-facing output. The design goal is to keep each part replaceable and its behavior traceable at the required level of sovereignty.

The same architecture can mix deployment choices by task. Public-data work may continue to use proprietary hosted models. Guardrails, knowledge-base tasks, or agent inference may instead use locally hosted models. Yücel names Mistral, Google, NVIDIA, and Jina as possible sources of models for these roles; she does not require one provider or one deployment policy for every component.

Component activity and agent execution can feed spans into an LLM observability system, while OpenTelemetry integration permits custom observability. Available instrumentation must still be configured deliberately: current Haystack tracing documentation requires explicit activation and disables input/output content tracing by default to avoid exporting sensitive information. Storage is another independent choice; providers offering both cloud and open-source editions can support an on-premises deployment when that boundary is required.

11:3211:44
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

11:32 · section reference included

Route messages and bound the tool inventory

The implementation walkthrough starts with a guardrail model configured through NvidiaChatGenerator. Connecting it to LLMMessagesRouter turns classification into pipeline routing: the demonstration describes safe and unsafe paths. The router matches model outputs against configured patterns and also has an unmatched output, so an implementation must account for classifications that fit neither expected route.

Next, MCPToolset connects to a locally hosted MCP server and selects named tools. The examples are knowledge-base search and PDF-report generation. Selecting tools matters because the server may expose many capabilities that this particular agent should not receive. The tool_names option restricts the discovered inventory; it is not a substitute for authorization enforced by the server.

The inventory can also contain tools built from Python functions, Haystack components, other agents, or complete workflows such as ingestion and RAG pipelines. After assembling these capabilities, the walkthrough places them in a SearchableToolset. It uses BM25 to discover relevant tools dynamically, avoiding the need to put every definition into the model’s context. Yücel’s inventory of hundreds of tools is a hypothetical motivation, not a measured scale or performance result.

14:3614:48
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

14:36 · section reference included

Connect inference and require human confirmation

The agent’s system prompt states its purpose and the tools it can use. Calling it a sovereign agent describes the intended role; enforcement comes from the surrounding controls. Its chat generator supplies inference. For an internal on-premises endpoint, a team can create a custom component that calls the company’s inference service. If the endpoint is OpenAI API compatible, an existing Haystack component can provide the connection.

After connecting inference and tools, the walkthrough adds confirmation strategies. Its payment example distinguishes two kinds of action:

ActionDemonstrated approval intent
Submit a requestAsk for human approval every time
List payment requestsAsk initially, then allow repeated use within the cycle

This distinction keeps a consequential submission behind repeated approval while allowing repeated retrieval after permission. The current Agent API reference is not a historical specification of the demonstrated confirmation strategy, so the example should not be read as establishing the exact scope of cached approval.

16:1916:29
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

16:19 · section reference included

Assemble the payment-report workflow

The final assembly brings the controls into one pipeline:

  1. Add a tracer connected to the LLM observability system.
  2. Add the input guardrail.
  3. Connect the agent and its tools.
  4. Connect the output guardrail.

The concrete request is to retrieve outstanding payment requests for Q3 and generate a PDF. The walkthrough describes the agent using its tools to create the report and save it to a directory. This example brings routing, tool access, inference, and tracing into one application flow; it does not establish a deployment procedure or a measured performance result.

17:2417:37
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

17:24 · section reference included

Test whether the team can act independently

The closing test returns to capabilities the team can demonstrate:

  • Model replacement: Can you swap models without changing application logic?
  • Auditable execution: Do you have reproducible run logs stored in a compliant way?
  • Incident response: Can your team respond to an incident without calling a vendor or hyperscaler?

These questions put the burden on the working system: whether the organization can change it, reconstruct its behavior, and operate it when something goes wrong.

Sovereignty Checklist slide asking whether models can be swapped without changing application logic, reproducible run logs are stored compliantly, and the team can respond to incidents without calling a vendor.
Three sovereignty checks: model swapping, compliant reproducible logs and independent incident response.
17:5918:13
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

17:59 · section reference included

Resources

From the talk

Updates since the talk

Read the complete timestamped transcript
  1. 0:00

    [upbeat music] Hello, everyone.

  2. 0:15

    Can you all hear me well? Yes. All right. Amazing. Uh, thank you for joining this session. In this one, we're gonna talk about sovereignty. Uh, my name is Bilge.

  3. 0:24

    I work as a senior developer relations engineer at deepset. But I want to start with a question. So how many of you are familiar with the term of sovereignty?

  4. 0:34

    Wow. Okay, amazing. Maybe I don't need to do a lots of introduction for this one. And, um, just a little bit of context here about deepset. Uh, deepset is the company behind the open source orchestration framework called Haystack.

  5. 0:48

    We also have our enterprise platform, and with those products, we are solving custom AI challenges for big organizations like Airbus, Bosch, Siemens, but also public sector, uh, organizations like European Commission, Federal Ministry of Research and Technology, uh, and Space in Germany and other ministries as well.

  6. 1:08

    So you can imagine sovereignty is a very big and important topic for us.

  7. 1:16

    So here is a, like a policy definition you can say what sovereign, sovereign AI is. Sovereign AI is the ability of an organization to design, deploy, and operate AI systems on its own terms.

  8. 1:30

    But we are all engineers here. We are not policymakers. We are not lawyers. So if you, if you turn that into a technical, uh, definition, it's basically having explicit control over data flow, model choice, infrastructure, observability and operations.

  9. 1:50

    And, um, for us to understand it better, I want to split that into four pillars. So the first one is data sovereignty. So it's about where you store your data.

  10. 2:00

    Where does it get processed? The second one is model sovereignty, who controls the running models, the origin of the training data. The third one is infrastructure sovereignty. So where does compute happen?

  11. 2:11

    And the last one is operational sovereignty. So is your, uh, application, is your system traceable? Who can update it? Who owns the incident response?

  12. 2:22

    So let's go into the depths of these for a minute. Um, data sovereignty. Data is the most important asset, asset that we have in, in an enterprise. And for us to have data sovereignty, data should be processed and stored within trusted jurisdictions to meet compliance requirements.

  13. 2:42

    What does it mean? So basically, GDPR says that your-- the European citizen data should stay within Europe. But if you send that data to an embedding model, to an embedding API hosted in Virginia in the US, then you are already losing the control of your data.

  14. 2:59

    So that's against data sovereignty. And the other aspect is access permissions. So that's not exactly about how the data is stored and processed, but if there are users in your organization, within your organization that are-- that has access to data that are not-- that they are not supposed to see, that is also a breach of data sovereignty.

  15. 3:20

    The other one is infrastructure sovereignty. So where does compute happen? It means, like, we, we have the AI application layer. So we have our RAG pipeline ingestion, we have agents, it is to-- the tools for the agents, and they all run somewhere.

  16. 3:36

    And where this application layer runs defines the infrastructure sovereignty of your system. Um, and this-- and there's this whole spectrum from max control to max convenience. Maybe you run everything in an air-gapped environment.

  17. 3:49

    It gives you the EU AI Act safe. Maybe you run on a, a private VPC. This gives you GDPR safety. There is also sovereign cloud. This kinda depends on the provider that you're going with.

  18. 4:02

    And there's also, at the very end, there's SaaS. So with SaaS, you kind of face the CLOUD Act risk, meaning that if you are, for example, using a US-headquartered company, although you store, you run all your data, uh, all your application within Europe, uh, they have ability to get access to your running data.

  19. 4:23

    So that's against the sovereignty that you have over your system.

  20. 4:29

    The other pillar is model sovereignty. So who controls the model and the origin of the training data? Um, so the-- You should have the freedom to choose and switch models.

  21. 4:40

    But what it means that if your system can only work with one specific model, you are tightly coupled with that model provider. If they are-- If the API is down, then you lose the access.

  22. 4:52

    If they increases the price, then you also have a cost issue. Um, this is ki- completely against the model sovereignty idea. And the other one is swappability without inf-- architectural changes.

  23. 5:03

    So maybe you're not coup-- tightly coupled with that model provider. Maybe you can use other models as well. But if your system, if your, uh, code doesn't allow that immediately, then you are, although technically you are not tied to that provider, but you cannot just change the whole code base within one day.

  24. 5:26

    And the last one is training data origin. So this is a bit controversial because we don't have a way to know, like, where the model was trained, which data was used to train this model.

  25. 5:37

    Uh, but, uh, if a model provider is a European company, then they have a better advantage than other companies based in the US.

  26. 5:50

    The, the last pillar is operational sovereignty. So like building the whole AI system is one aspect, but monitoring, so basic- basically maintaining this whole system by monitoring, evaluating, managing is also another.

  27. 6:05

    Uh, operational sovereignty is about monitoring how these systems behave in production, including model inputs and outputs. And in high-stake environments like HR or finance, it requires human in the loop and managing versioning updates to models and the application layer, uh, in a controlled, auditable way also goes under this operational sovereignty.

  28. 6:30

    But the good news is sovereignty is a spectrum, so not everyone needs, like, needs to be sovereign in all of these pillars. Of course, like, uh, if you're in finance, in healthcare, in hi- high-stake environment, in high-stake domains, you might need a fully air-gapped solution.

  29. 6:46

    But if you are an enterprise or a startup working in a different domain, then maybe you don't need everything at all. You're, you don't need to comply with every sovereignty pillar that I showed you.

  30. 6:58

    The important thing here is you need to know the level of control, so the, the level of vendor lock-in you have with your system.

  31. 7:09

    So you are here in the conference this week, but next week on Monday, you're gonna go back to work and maybe your manager or CIO comes and says like, "Okay, now we need to make, like, we have this working system, but now we need to make it sovereign."

  32. 7:22

    Uh, and in this slide, I want to show you what you do first usually and what you break in this existing system. So probably intuitively, the first thing that you do is the model, and you replace the frontier API that you have with a self-hosted model.

  33. 7:37

    And what happens? Then you need to translate this whole API logic to this new model architecture. Maybe you need to update the prompts. Basically, you need to evaluate the performance of this system from scratch, and you need to write a lot of code.

  34. 7:52

    The other one is you move private data into the required jurisdiction because you notice that, okay, we have some information hosted in, in the US, now we need to take them somewhere in Europe.

  35. 8:04

    And you do that, but you find yourself managing multiple databases and instances. Then search becomes a problem. So how do you handle search? Do you do classification, like query classification first, or do you send the request to both of those databases and get information from those?

  36. 8:21

    That's just one challenge that comes with this change. And the other one is you replace managed infra with on-prem, and you immediately notice how much you had vendor lock-in in this area.

  37. 8:34

    You-- Because now you also start thinking about, okay, Kubernetes cluster management. How do I, like, deal with all these, um, all these things that all these model pro- all these cloud providers were handling for you?

  38. 8:47

    And there are also hardware limitations because now you need to think about, okay, I have this application layer running in GP-- CPU, but now I have my model run, now running GPU.

  39. 8:58

    So I need to connect them in a way, and this connection management, network management also becomes a problem. And the last one is you incorporate observability and tracing. I mean, if you, if you didn't have observability until this point in your system, that's an important issue already.

  40. 9:16

    But if you, uh, now you n- when you need to incorporate it, you notice that you have this fully black box thing. So you don't know actually what's happening in this AI application layer.

  41. 9:28

    So you need to understand now because you need to log it somewhere so that your system is auditable. And there's also version control aspect. How do you do version control for your application layer, for this whole system that you are managing?

  42. 9:44

    And I want to here shamelessly plug Haystack because a good orchestration framework, I think, solves some of these problems. I mean, good orchestration cannot solve your GPU limitation, but can help you with so many different stuff.

  43. 9:58

    Uh, the, the first thing is, uh, Haystack is, has this consistent interface. So basically, it, when you want to, uh, transition your system from cloud to a self-hosted, uh, application, you can easily do so just changing couple lines of code and just focus on the hardware that you have and this hardware connection.

  44. 10:20

    The second one is explicit data flow. So every input and output in a Haystack application is typed and declared. So you can read the pipeline definition or, or the, this whole ap- application, um, in a, in a, in a RAG way and know exactly what data moves where.

  45. 10:39

    And even in less deterministic architectures like agents and, uh, like agents, the whole data, these tools, tool calls, and tool outputs are traceable. The third one is YAML. So the Haystack applications are serializable to YAML, making them very easy to version.

  46. 10:57

    So you can just, after creating your application with Haystack, you can turn that into YAML, put it into your version control, and then when you need to go back to the history, you just need to go back to the, the commit, and you, you can see the hash.

  47. 11:15

    And the last part is it's truly open source. So there's no black box, no hidden assumptions. And when you need to customize some code or extend one of the components, you can easily do so because you actually understand what's happening under the hood.

  48. 11:32

    And here is one of-- here's a sovereign architecture that I want to show you, um, today just as, like, a high-level overview. Uh, imagine you are building this agent, but it needs to be some sort of sovereign.

  49. 11:44

    So first thing that you do, probably you add some guardrails before. And then because this guardrail needs to check if there's, like, a prompt injection coming from the user input, it-- coming through the user input, and it needs to also check some spec-specific regulatory checks maybe because, uh, this is like a very specific agent that needs to

  50. 12:04

    be used in a certain way, and you wanna check if user has this intention. And if it's unsafe, it just leaves the application layer immediately. Uh, and if it's a safe, uh, request, safe input, then it goes to the agent.

  51. 12:18

    And agent here is basically an LLM with a system prompt and lots of different tools, and these tools can be API calls. Maybe they are connected to your knowledge base, that you are, you are doing some sort of search.

  52. 12:31

    Maybe you are using other agents if you are dealing with, uh, um, multi-agentic systems, and there are also MCP service, of course, that are connected to your agent. And agent creates an input, so does the, uh, does the work for you.

  53. 12:43

    And there is the last guardrail doing a compliance checks because you also don't wanna leak sensitive information to your user. And then there becomes an output.

  54. 12:56

    And, uh, but of course, like, how you design a system as a sovereign system is a challenge. And the, the duty of Haystack here is to make sure that everything is swappable, traceable, and without vendor lock-in, um, so you know you can work with the right level of sovereignty, uh, that you need.

  55. 13:16

    And here are some of the, uh, the tools that I picked from, uh, that I picked that you can work with Haystack. Um, so maybe you, uh, you decide you need, like, different models based on the task.

  56. 13:29

    Maybe you decide that for public data you can steal some proprietary models from those providers, so you don't worry about those. But for some of the tasks, for guardrails, maybe for your knowledge base, for, uh, for your LLM, you think that you need local models running on, on, like, self-hosted ro-ro, local models from other, uh, different providers

  57. 13:50

    like, uh, Mistral, Google, Nvidia, uh, and Jina.

  58. 13:55

    And then of course, uh, there's traceability aspect. And, uh, as I said, in Haystack, everything, like every input coming to a component and every output, but as well as the traces in the agent, is easily visible.

  59. 14:09

    So you can just connect those spans to your LLM observability tool, and you can, uh, since there is OpenTelemetry integration, you can also implement your own observability. And as the last part, there's the storage.

  60. 14:21

    I wanted to pick some of the providers who can give you cloud and also the open source version of them, so you can easily host these ones, uh, locally, uh, on your prem.

  61. 14:36

    And here is the, um, here is the guardrail, um, code. So, uh, basically how you connect a guardrail or how you define a guardrail is quite simple with Haystack.

  62. 14:48

    You just start with a model provider. For example, in this one it's an Nvidia chat generator. You give the name of the model that you wanna use, and by connecting it to your LLM message router, it helps you do the classification.

  63. 15:01

    So it checks the input. If it's safe, it goes to the safe route, and if it's unsafe, it goes to the unsafe route.

  64. 15:10

    And then you add-- you start adding tools. So you connect your MCP server that you host locally with, uh, with MCP toolset, and you give the names of the tools that you wanna pick from that MCP server.

  65. 15:22

    Because probably you have lots of tools running on that, on that MCP server. You don't want to get all of them. Uh, you don't wanna have access to all of them with just one agent.

  66. 15:33

    And you pick, for example, knowledge base search and generating PDF report one. And, but of course, like, you can add different tools. You can add just, like, you can start defining tools from a Python function, or you can connect other components in Haystack, like agent component, uh, into a tool.

  67. 15:49

    Or maybe there's some functionality that you define, like data ingestion or RAG pipeline, and you can also convert those workflows into tools as well. And by after this defining all these tools, you put them in a searchable tool set.

  68. 16:05

    Uh, so this gives you a dynamic tool search with, with BM25 because you probably now have more than hundreds of tools to, for your agent, but you don't wanna fill in the whole context with just tool definitions.

  69. 16:19

    Then there's this agent component. So bas-basically, you define a system prompt. You say, like, you're a sovereign agent with access to multiple tools, and you define the intention of this agent.

  70. 16:29

    And then you put a brain to this agent, basically a chat generator. If you are, uh, running this model locally on-prem, maybe you create your own custom component saying that, "Oh, this is my on-prem chat generator connected to this internal company, uh, URL," and getting the model inference from that.

  71. 16:49

    But of course, if you have an OpenAI API compatible endpoint, you can already use an existing component in Haystack. And then you give the tools, and then you define confirmation strategies.

  72. 17:00

    So basically you incorporate human in the loop saying that, so if the user wants to submit a request, the agent should always ask for human approval. But if the agent wants to use the list payment request tool, maybe ask for permission first from the human, and then you can use this tool as much as possible, uh, as

  73. 17:21

    much as you want, uh, in this whole cycle.

  74. 17:24

    Then you bring it all together. So you start defining your pipeline. You first add the component as a tracer that connects to your, uh, LLM observability. Then you put the input guardrail.

  75. 17:37

    You connect your agent, the output guardrail, and you ju- you can just run this agent saying that, "Pull the outstanding payment request for Q3 and generate a PDF for me."

  76. 17:48

    And by using the tools that this agent has, it creates the PDF for you and saves it under this, uh, directory under this name.

  77. 17:59

    Um, so with that, um, I want to give you just, like, when we are coming to the end of the presentation, I want to show you a checklist. So if you want to check if your, uh, system is sovereign, you can, you can take a look at these questions.

  78. 18:13

    So you can think about it. Can you swap models without changing the application logic? Do you have reproducible run logs stored in a compliant way? And can your team respond to an incident without calling a vendor, uh, like one of those hyperscalers?

  79. 18:31

    Um, thank you for joining this session, and you can get the presentations and ask the questions to me by filling in the, uh, the form. And you can also find me on social media if you want to connect there.

  80. 18:43

    I'm happy to talk about you about, um, agents, Haystack, and especially in a sovereign setting. Thank you. [audience applauding] [outro jingle]