Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Contex caching (German translation) #515

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions pages/applications.de.mdx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# LLM-Anwendungen
# LLM-Anwendungen & Anleitungen

import { Callout } from 'nextra-theme-docs';
import { Cards, Card } from 'nextra-theme-docs';
Expand All @@ -7,4 +7,4 @@ import ContentFileNames from 'components/ContentFileNames'

In diesem Abschnitt werden wir einige fortgeschrittene und interessante Methoden besprechen, wie wir Prompt-Engineering nutzen können, um nützliche und anspruchsvollere Aufgaben mit LLMs (große Sprachmodelle) zu bewältigen.

<ContentFileNames section="applications" lang="de"/>
<ContentFileNames section="applications" lang="de"/>
1 change: 1 addition & 0 deletions pages/applications/_meta.de.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"function_calling": "Funktionsaufrufe",
"context-caching": "Kontext-Caching mit LLMs",
"generating": "Generierung von Daten",
"synthetic_rag": "Generierung eines synthetischen Datensatzes für RAG",
"generating_textbooks": "Umgang mit generierten Datensätzen und deren Vielfalt",
Expand Down
54 changes: 54 additions & 0 deletions pages/applications/context-caching.de.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Kontext-Caching mit Gemini 1.5 Flash

import {Cards, Card} from 'nextra-theme-docs'
import {CodeIcon} from 'components/icons'

Google hat kürzlich ein neues Feature namens [Kontext-Caching](https://ai.google.dev/gemini-api/docs/caching?lang=python) veröffentlicht, das über die Gemini-APIs mithilfe der Modelle Gemini 1.5 Pro und Gemini 1.5 Flash verfügbar ist. Diese Anleitung bietet ein grundlegendes Beispiel dafür, wie man Kontext-Caching mit Gemini 1.5 Flash verwendet.

<iframe width="100%"
height="415px"
src="https://www.youtube.com/embed/987Pd89EDPs?si=j43isgNb0uwH5AeI" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
/>

https://youtu.be/987Pd89EDPs?si=j43isgNb0uwH5AeI

### Der Anwendungsfall: Analyse eines Jahres an ML-Papieren

Die Anleitung zeigt, wie man Kontext-Caching verwenden kann, um die Zusammenfassungen aller [ML-Papiere, die wir im letzten Jahr dokumentiert haben](https://github.com/dair-ai/ML-Papers-of-the-Week), zu analysieren. Wir speichern diese Zusammenfassungen in einer Textdatei, die jetzt an das Modell Gemini 1.5 Flash übergeben und effizient abgefragt werden kann.

### Der Prozess: Hochladen, Caching und Abfragen

1. **Datenvorbereitung:** Zuerst die README-Datei (die die Zusammenfassungen enthält) in eine Klartextdatei umwandeln.
2. **Verwendung der Gemini-API:** Die Textdatei kann mithilfe der Google-`generativeai`-Bibliothek hochgeladen werden.
3. **Implementierung des Kontext-Cachings:** Ein Cache wird mit der Funktion `caching.CachedContent.create()` erstellt. Dies umfasst:
* Spezifizierung des Gemini Flash 1.5 Modells.
* Vergabe eines Namens für den Cache.
* Definition einer Anweisung für das Modell (z.B. "Sie sind ein Experte für KI-Forschung...").
* Festlegung einer „time to live“ (TTL) für den Cache (z.B. 15 Minuten).
4. **Erstellen des Modells:** Anschließend wird eine generative Modellinstanz mit dem gecachten Inhalt erstellt.
5. **Abfragen:** Wir können das Modell mit natürlichen Sprachfragen abfragen, wie zum Beispiel:
* "Kannst du mir bitte die neuesten AI-Papiere der Woche nennen?"
* "Kannst du die Papiere auflisten, die Mamba erwähnen? Nennen Sie den Titel des Papiers und die Zusammenfassung."
* "Was sind einige der Innovationen rund um Long-Context-LLMs? Nenne den Titel des Papiers und die Zusammenfassung."

Die Ergebnisse waren vielversprechend. Das Modell hat Informationen aus der Textdatei genau abgerufen und zusammengefasst. Kontext-Caching erwies sich als sehr effizient und eliminierte die Notwendigkeit, die gesamte Textdatei mit jeder Anfrage erneut zu senden.

Dieser Workflow hat das Potenzial, ein wertvolles Werkzeug für Forscher zu werden, da er ihnen ermöglicht:

* Große Mengen an Forschungsdaten schnell zu analysieren und abzufragen.
* Spezifische Ergebnisse zu finden, ohne manuell durch Dokumente suchen zu müssen.
* Interaktive Forschungssitzungen durchzuführen, ohne Eingabetokens zu verschwenden.

Wir freuen uns darauf, weitere Anwendungen des Kontext-Cachings zu erkunden, insbesondere in komplexeren Szenarien wie agentischen Workflows.

Das Notebook ist unten zu finden:

<Cards>
<Card
icon={<CodeIcon />}
title="Kontext-Caching mit Gemini-APIs"
href="https://github.com/dair-ai/Prompt-Engineering-Guide/blob/main/notebooks/gemini-context-caching.ipynb"
/>
</Cards>
`
13 changes: 5 additions & 8 deletions pages/introduction/examples.de.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import {Cards, Card} from 'nextra-theme-docs'
import {CodeIcon} from 'components/icons'
import {Bleed} from 'nextra-theme-docs'

Der vorherige Abschnitt hat ein grundlegendes Beispiel dafür vorgestellt, wie man Prompts für LLMs verwendet.

Expand All @@ -19,13 +18,11 @@ Themen:

---

<Bleed>
<iframe width="100%"
height="415px"
src="https://www.youtube.com/embed/TBhRC4Dath4?si=6nwh0GuYAOv1H6yT" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
/>
</Bleed>
<iframe width="100%"
height="415px"
src="https://www.youtube.com/embed/TBhRC4Dath4?si=6nwh0GuYAOv1H6yT" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
/>

## Textzusammenfassung
Eine der Standardaufgaben in der Generierung natürlicher Sprache ist die Textzusammenfassung. Textzusammenfassung kann viele verschiedene Varianten und Bereiche umfassen. Tatsächlich ist eine der vielversprechendsten Anwendungen von Sprachmodellen die Fähigkeit, Artikel und Konzepte in schnelle und leicht verständliche Zusammenfassungen zu transformieren. Versuchen wir eine grundlegende Aufgabe zur Zusammenfassung mit Hilfe von Prompts.
Expand Down
2 changes: 2 additions & 0 deletions pages/research/rag.de.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,7 @@ Unten finden Sie eine Sammlung von Forschungsarbeiten, die wichtige Erkenntnisse

| **Erkenntnis** | **Referenz** | **Datum** |
| ------------- | ------------- | ------------- |
| Zeigt, wie Retrieval-Augmentierung verwendet werden kann, um Sprachmodel-Assistenten durch das Training von Retrieval-Augmented-Simulatoren zu destillieren. | [KAUCUS: Knowledge Augmented User Simulators for Training Language Model Assistants](https://aclanthology.org/2024.scichat-1.5) | März 2024 |
| Schlägt Corrective Retrieval Augmented Generation (CRAG) vor, um die Robustheit der Generation in einem RAG-System zu verbessern. Die Kernidee besteht darin, eine Selbstkorrekturkomponente für den Retriever zu implementieren und die Nutzung abgerufener Dokumente zur Unterstützung der Generation zu verbessern. Der Retrieval-Evaluator hilft, die Gesamtqualität der abgerufenen Dokumente anhand einer Anfrage zu bewerten. Durch die Nutzung von Websuche und optimierten Wissensnutzungsoperationen kann die automatische Selbstkorrektur und effiziente Nutzung abgerufener Dokumente verbessert werden. | [Corrective Retrieval Augmented Generation](https://arxiv.org/abs/2401.15884)| Jan 2024|
| Betten rekursiv Textblöcke ein, clustert und fasst sie zusammen, um einen Baum mit unterschiedlichen Zusammenfassungsebenen von unten nach oben zu konstruieren. Zur Inferenzzeit ruft das vorgeschlagene RAPTOR-Modell aus dem Baum ab, integriert Informationen aus langen Dokumenten auf verschiedenen Abstraktionsebenen. | [RAPTOR: Recursive Abstractive Processing for Tree-Organized Retrieval](https://arxiv.org/abs/2401.18059)| Jan 2024 |
| Ein allgemeines Programm mit mehrstufigen Interaktionen zwischen LMs und Retrievern, um Multi-Label-Klassifikationsprobleme effizient anzugehen. | [In-Context Learning for Extreme Multi-Label Classification](https://arxiv.org/abs/2401.12178) | Jan 2024 |
Expand Down Expand Up @@ -234,6 +235,7 @@ Unten finden Sie eine Sammlung von Forschungsarbeiten, die wichtige Erkenntnisse

## Referenzen

- [KAUCUS: Knowledge Augmented User Simulators for Training Language Model Assistants](https://aclanthology.org/2024.scichat-1.5)
- [A Survey on Hallucination in Large Language Models: Principles,Taxonomy, Challenges, and Open Questions](https://arxiv.org/abs/2311.05232)
- [Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks](https://arxiv.org/abs/2005.11401)
- [Retrieval-augmented multimodal language modeling](https://arxiv.org/abs/2211.12561)
Expand Down
14 changes: 5 additions & 9 deletions pages/research/rag_hallucinations.de.mdx
Original file line number Diff line number Diff line change
@@ -1,14 +1,10 @@
# Reduzierung von Halluzinationen in strukturierten Ausgaben durch RAG

import {Bleed} from 'nextra-theme-docs'

<Bleed>
<iframe width="100%"
height="415px"
src="https://www.youtube.com/embed/TUL5guqZejw?si=Doc7lzyAY-SKr21L" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
/>
</Bleed>
<iframe width="100%"
height="415px"
src="https://www.youtube.com/embed/TUL5guqZejw?si=Doc7lzyAY-SKr21L" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
/>

Forscher bei ServiceNow haben ein [neues Paper](https://arxiv.org/abs/2404.08189) veröffentlicht, in dem sie diskutieren, wie ein effizientes RAG-System für strukturierte Ausgabeaufgaben eingesetzt werden kann.

Expand Down
16 changes: 6 additions & 10 deletions pages/research/synthetic_data.de.mdx
Original file line number Diff line number Diff line change
@@ -1,14 +1,10 @@
# Best Practices und gewonnene Erkenntnisse über synthetische Daten für Sprachmodelle

import {Bleed} from 'nextra-theme-docs'

<Bleed>
<iframe width="100%"
height="415px"
src="https://www.youtube.com/embed/YnlArBZJHY8?si=ZH3hFzwixUopxU5Z" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
/>
</Bleed>
<iframe width="100%"
height="415px"
src="https://www.youtube.com/embed/YnlArBZJHY8?si=ZH3hFzwixUopxU5Z" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
/>

Dieses [Paper](https://arxiv.org/abs/2404.07503) bietet einen Überblick über bewährte Praktiken und gewonnene Erkenntnisse bezüglich synthetischer Daten für Sprachmodelle und wurde von Google DeepMind und weiteren Mitarbeitern veröffentlicht.

Expand All @@ -18,4 +14,4 @@ Wir wissen mit Sicherheit, dass je mehr hochwertige Daten wir diesen Modellen zu

Das Paper behandelt auch wichtige Themen im Umgang mit synthetischen Daten wie Qualitätssicherung, Faktentreue, Treue, Unvoreingenommenheit, Vertrauenswürdigkeit, Privatsphäre und mehr.

Im Abschnitt zu verwandten Arbeiten werden auch viele großartige Referenzen erwähnt.
Im Abschnitt zu verwandten Arbeiten werden auch viele großartige Referenzen erwähnt.
6 changes: 6 additions & 0 deletions pages/techniques/fewshot.de.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Few-Shot Prompting

<iframe width="100%"
height="415px"
src="https://www.youtube.com/embed/ojtbHUqw1LA?si=DPHurHTzZXm22vcN" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
/>

Obwohl Großsprachmodelle bemerkenswerte Fähigkeiten im Zero-Shot-Setting demonstrieren, weisen sie dennoch bei komplexeren Aufgaben Schwächen auf, wenn sie im Zero-Shot-Modus verwendet werden. Few-Shot Prompting kann als Technik eingesetzt werden, um das Lernen im Kontext zu ermöglichen, indem wir Demonstrationen im Prompt bereitstellen, um das Modell zu einer besseren Leistung zu lenken. Die Demonstrationen dienen als Konditionierung für nachfolgende Beispiele, bei denen wir möchten, dass das Modell eine Antwort generiert.

Gemäß [Touvron et al. 2023](https://arxiv.org/pdf/2302.13971.pdf) traten Few-Shot-Eigenschaften zum ersten Mal auf, als die Modelle auf eine ausreichende Größe skaliert wurden [(Kaplan et al., 2020)](https://arxiv.org/abs/2001.08361).
Expand Down