# Building with Large Language Models (LLMs)

LLMs show remarkable capabilities in understanding and generating human-like text. Learn how you can use them in your <ProductShortName /> pipelines.

***

## LLMs in Your Pipelines

You can easily integrate LLMs in your <ProductShortName /> pipelines using the versatile Generators coupled with a `PromptBuilder`. `Generators` work well for retrieval augmented generation (RAG) question answering and other tasks such as text classification, summarization, and more. It performs the specific task you define within the prompt you pass to it. 

To build autonomous systems that make decisions, use the [Agent](/docs/concepts/ai-agents/ai-agent.mdx) component. It uses a `ChatGenerator` as its decision-making brain and can call tools you provide.  
For a deeper explanation of decision-making systems, check [Agentic Pipelines](/docs/concepts/ai-agents/agentic-pipelines.mdx).

# Agents

<ProductShortName /> offers an Agent component powered by an LLM of your choice. It can call and run tools, reason, and make autonomous decisions. Try it out in your pipelines or use the pipeline templates we prepared. You can find them on the Pipeline Templates page under _Agents_. To learn more, see [Agents](/docs/concepts/ai-agents/ai-agent.mdx).

## Ready-Made Templates for LLM Apps

Pipeline Templates in <ProductName /> offer a variety of ready-made templates you can use with default settings. Templates with RAG in the title use an LLM and have streaming enabled by default.

In the *Conversational* category, you'll find RAG Chat templates designed specifically for chat scenarios, such as customer assistants. These chat pipelines include chat history in their responses, ensuring the LLM considers this information to create a human-like conversation experience. All chat pipelines have streaming enabled by default.

There's also a group of Agent templates with tools such as web search and RAG already configured. Check the _Agent_ group.

## Streaming
<StreamingExplanation />

## Tool Calling 

Also known as function calling, tool calling is the ability of the model to use external tools to resolve queries. When given the tools, the LLM decides which one to use, and then calls it. 

In <ProductName />, you can add an Agent component and configure its tools. For details, see [Configure the Agent](/docs/how-to-guides/building-agents/configuring-agent.mdx).

## Learn more

Here's a collection of information you may want to explore for more information related to LLMs and generative AI in <ProductName />.

### About LLMs (add links)

- [Language Models](/docs/learn/large-language-models-overview.mdx)
- [Recommended Models](/docs/learn/models-1.mdx)
- [RAG Question Answering](/docs/learn/generative-question-answering.mdx)

### Generative AI in Practice (add links)

- [Tutorial: Building a Robust RAG System](/docs/tutorials/learn-the-basics/tutorial-building-a-robust-rag-system.mdx)
- [Enable References for Generated Answers](/docs/how-to-guides/designing-your-pipeline/work-with-llms/enable-references-for-generated-answers.mdx)
- [Using Hosted Models and External Services](/docs/how-to-guides/designing-your-pipeline/use-hosted-models-and-services/supported-connections-and-integrations.mdx)

### Prompt Engineering (add links)

- [Prompt Engineering Guidelines](/docs/learn/prompt-engineering-guidelines.mdx)
- [Writing Prompts in <ProductName />](/docs/how-to-guides/designing-your-pipeline/work-with-llms/write-prompts-in-deepset-cloud.mdx)
- [Engineering Prompts in Prompt Explorer](/docs/how-to-guides/designing-your-pipeline/work-with-llms/using-prompt-studio.mdx)
