Použijte Knowledge Assistant k vytvoření vysoce kvalitního chatovacího robota využívajícího vaše dokumenty.

Tato stránka popisuje, jak pomocí nástroje Knowledge Assistant vytvořit chatovací robot pro otázky a odpovědi na vaše dokumenty a zlepšit jeho kvalitu na základě zpětné vazby z přirozeného jazyka od odborníků na danou problematiku.

Co je Knowledge Assistant?

Pomocí nástroje Knowledge Assistant můžete vytvořit chatovacího robota, který dokáže odpovídat na otázky týkající se vašich dokumentů a poskytovat vysoce kvalitní odpovědi s citacemi. Nástroj Knowledge Assistant používá pokročilou AI a řídí se metodou Instructed Retriever , která řeší omezení tradičního přístupu rozšířené generace načítání (RAG) a poskytuje odpovědi nejvyšší kvality na základě vámi zadané dokumentace. Podporuje dokumenty ve více jazycích.

Nástroj Knowledge Assistant je ideální pro podporu následujících případů použití:

  • Odpovězte na uživatelské otázky na základě dokumentace k produktu.
  • Odpovězte na otázky zaměstnanců související se zásadami personálního oddělení.
  • Odpovězte na dotazy zákazníků na základě znalostních bází podpory.

Nástroj Knowledge Assistant umožňuje zlepšit kvalitu chatovacího agenta a upravit jeho chování na základě zpětné vazby z přirozeného jazyka od odborníků na danou problematiku. Poskytněte dotazy a pokyny přímo v prostředí a sdílejte svého agenta, aby ostatní mohli spolupracovat a zlepšit výkon agenta.

Nástroj Knowledge Assistant vytvoří koncový bod agenta, který můžete použít pro své aplikace v následném procesu. Například na následujícím obrázku vidíte, jak můžete s koncovým bodem pracovat tak, že s ním budete chatovat v AI Playgroundu. Ptejte se agenta na otázky týkající se vašich dokumentů a agent odpoví s použitím citací.

Koncový bod nástroje Knowledge Assistant v prostředí Playground

Nástroj Knowledge Assistant používá výchozí úložiště k ukládání dočasných transformací dat, kontrolních bodů modelu a interních metadat, která využívají jednotlivé agenty. Při odstranění agenta se všechna data přidružená k agentu odeberou z výchozího úložiště.

Požadavky

Vytvořte agenta znalostního asistenta

Přejděte na ikonu Agenti.Agenti v levém navigačním podokně vašeho pracovního prostoru. Klikněte na Vytvořit agenta a vyberte Pomocníka pro znalosti.

Krok 1: Konfigurace agenta

Nakonfigurujte svého agenta a poskytněte mu zdroje znalostí, které budou používat k zodpovězení otázek.

  1. Do pole Název zadejte název vašeho agenta.

  2. V poli Popis popište, co může váš agent dělat.

  3. Na panelu Zdroj znalostí přidejte zdroj znalostí. Můžete zadat soubory ve svazku, soubory v tabulce nebo index vyhledávání AI.

    Soubory ve svazku

    Pro soubory ve svazku nebo adresáři katalogu Unity se podporují následující typy souborů: txt, pdf, md, ppt/pptx a doc/docx. Soubory větší než 50 MB se během příjmu dat automaticky přeskočí a nejsou zahrnuty do znalostní báze. Soubory PDF, DOCX, DOCX, PPT a PPTX s více než 500 stránkami se také přeskočí. U PowerPoint souborů se každý snímek počítá jako stránka. Soubory TXT a MD nemají žádný limit stránky.

    1. V části Typ vyberte Soubory ve svazku.
    2. V poli Zdroj vyberte svazek katalogu Unity nebo adresář svazku, který obsahuje vaše soubory.
    3. Do pole Název zadejte název zdroje znalostí.
    4. V části Popsat obsah popište, jaký obsah obsahuje zdroj znalostí, který pomáhá agentu pochopit, kdy použít tento zdroj dat.

    Soubory v tabulce

    Soubory v tabulce katalogu Unity můžete použít jako zdroj znalostí. Tabulky ingestované z SharePoint nebo Google Drive pomocí konektorů Databricks automaticky vytvářejí očekávaný formát. U tabulek přijatých z jiných zdrojů, jako je Jira nebo Confluence, možná budete muset transformovat data tak, aby odpovídala požadovanému schématu.

    Note

    Tabulka Katalogu Unity musí splňovat následující požadavky:

    • Tabulka je buď streamovaná tabulka , nebo tabulka s povoleným datovým kanálem Change .
    • Tabulka obsahuje sloupec obsahu typu BINARY nebo STRING.
    • Tabulka obsahuje sloupec metadata nebo sloupec _metadata typu STRUCT s následujícími poli:
      • file_path: Řetězec
      • file_name: Řetězec
      • file_size: dlouhý
      • file_modification_time:Časové razítko
    1. V části Typ vyberte Soubory v tabulce.
    2. V poli Zdroj vyberte tabulku katalogu Unity, která obsahuje vaše data.
    3. (Volitelné) V poli Sloupec obsahu Soubor vyberte sloupec, který obsahuje obsah souboru. Pokud není uvedeno jinak, výchozím nastavením je sloupec content. Zobrazí se pouze sloupce typu BINARY a STRING.
    4. Do pole Název zadejte název zdroje znalostí.
    5. V části Popsat obsah popište, jaký obsah obsahuje zdroj znalostí, který pomáhá agentu pochopit, kdy použít tento zdroj dat.

    Index vyhledávání AI

    Note

    Indexy vyhledávání AI jsou podporovány pouze v případě, že index používá jeden z následujících modelů vkládání: databricks-gte-large-en, databricks-bge-large-ennebo databricks-qwen3-embedding-0-6b. Při vytváření indexu se ujistěte, že jste vybrali jeden z těchto modelů vkládání. Další informace najdete v tématu Vytvoření indexu vyhledávání AI.

    1. V části Typ vyberte Index vyhledávání AI.
    2. V poli Zdroj vyberte index, který chcete agenta poskytnout.
    3. Do pole Název zadejte název zdroje znalostí.
    4. Ve sloupci identifikátoru URI dokumentu vyberte sloupec s odkazem nebo odkazem na místo, odkud informace pocházejí. Agent ho použije ve svých citacích.
    5. V poli Textový sloupec zadejte sloupec, který obsahuje nezpracovaný text, který má agent načíst.
    6. V části Popsat obsah popište, jaký obsah obsahuje zdroj znalostí, který pomáhá agentu pochopit, kdy použít tento zdroj dat.
  4. (Volitelné) Pokud chcete přidat další zdroje znalostí, klikněte na Přidat zdroj znalostí. Můžete poskytnout až 10 zdrojů znalostí.

  5. (Volitelné) V poli Pokyny určete pokyny, jak má agent reagovat.

  6. Klikněte na Vytvořit agenta.

Vytvoření agenta a synchronizace zdrojů znalostí, které jste zadali, může trvat až několik hodin. Až bude agent připravený, zobrazí se na pravém bočním panelu synchronizované zdroje znalostí.

Important

Pokud aktualizujete nebo přidáváte soubory do zdrojů znalostí, musíte kliknout na ikonu Synchronizovat. Sync, aby agent změny zaznamenal. Synchronizace se provádí přírůstkově. Pokud například přidáte nový soubor do dříve synchronizovaného svazku katalogu Unity, synchronizace zpracuje pouze nově přidaný soubor.

Každý uživatel s oprávněním CAN MANAGE k asistentovi znalostí může synchronizovat zdroje znalostí.

Krok 2: Testování agenta

Jakmile agent dokončí sestavování, otestujte ho tím, že s ním budete chatovat. Agent by měl odpovědět citacím na otázky související s jeho zdroji znalostí.

  1. Začněte chatovat s vaším agentem přímo na záložce Vytvořit.
  2. (Volitelné) Můžete také kliknout na Otevřít v dětském hřišti a chatovat s ním v AI Playground.
  3. Zadejte dotaz pro vašeho agenta.
  4. Vyhodnocení odpovědi:
    1. Klikněte na Zobrazit myšlenky a podívejte se, jak váš agent reagoval na otázku.
    2. Kliknutím na Zobrazit trasování zobrazíte úplné trasování. V uživatelském rozhraní můžete přidat popisky ke stopám pro sledování kvality během procesu vývoje.
    3. Kliknutím na Zobrazit zdroje zobrazíte, jaké soubory agent cituje jako odkazy. Otevře se boční panel se seznamem zdrojů, které můžete zkontrolovat.

Pokud jste spokojení s výkonem agenta, pokračujte v používání agenta as-is.

Krok 3: Zlepšení kvality

Nástroj Knowledge Assistant může upravit chování agenta na základě zpětné vazby v přirozeném jazyce. Shromážděte zpětnou vazbu od odborníků prostřednictvím stránky konfigurace, abyste zlepšili kvalitu agenta. Shromažďování anotovaných dat pro vašeho agenta může zlepšit jeho kvalitu a chování.

Na kartě Příklady přidejte otázky, které vaši uživatelé položí, nebo otázky, na které váš agent již odpověděl špatně. Alternativně můžete importovat také označená data přímo z tabulky katalogu Unity.

  1. Přidejte otázky k označení:

    1. Chcete-li přidat otázku, klikněte na +Přidat .
    2. Do modálního okna Přidat otázku zadejte svou otázku.
    3. Klikněte na tlačítko Přidat. Otázka by se měla zobrazit v uživatelském rozhraní.
    4. Opakujte, dokud nepřidáte všechny otázky, které chcete vyhodnotit.
    5. Chcete-li odstranit otázku, klikněte na nabídku kebab a pak odstranit.
  2. Jakmile dokončíte přidávání otázek, můžete agenta sdílet s ostatními k přezkoumání, abyste mohli vytvořit vysoce kvalitní označenou datovou sadu. V pravém horním rohu klikněte na ikonu nabídky Kebab. Chcete-li spravovat oprávnění.

    Aby mohli odborníci získat přístup ke zpětné vazbě a poskytnout jim zpětnou vazbu, musíte jim udělit následující oprávnění:

    • CAN_MANAGE oprávnění ze stránky konfigurace agenta
  3. Nasdílejte odkaz na konfigurační stránku nástroje Knowledge Assistant a shromážděte zpětnou vazbu od odborníků.

  4. Pokud chcete označit data popiskem, klikněte na otázku a v zobrazeném podokně přidejte pokyny . Pokyny platí hned po jejich uložení.

  5. Znovu otestujte agenta na stránce konfigurace nebo na webu AI Playground a podívejte se na jeho vylepšený výkon. V případě potřeby přidejte další otázky a pokyny pro další vylepšení chování.

(Volitelné) Import a export označených dat

Import nových otázek a názorů přímo z tabulky katalogu Unity:

  1. Klikněte na Importovat.

  2. V poli Zdroj vyberte tabulku katalogu Unity obsahující označená data.

    Tabulka musí mít následující schéma:

    • eval_id: string
    • request: string
    • guidelines: array
      • items: string
    • metadata: string
    • tags: string
  3. Klikněte na Importovat.

Nové otázky a pokyny se sloučí do tabulky označených dat napravo.

Export označených dat jako tabulky katalogu Unity:

  1. Klikněte na Exportovat.
  2. V poli Schéma vyberte umístění schématu Unity Catalog a uložte data do.
  3. Do pole Název tabulky zadejte název tabulky.
  4. Klikněte na Exportovat.

Vytvoří se nová tabulka s označenými daty.

Správa zdrojů znalostí

Po vytvoření pomocníka pro znalostní bázi můžete přidávat, odebírat a aktualizovat zdroje znalostí bez opětovného vytvoření agenta. Zdroje znalostí může přidávat nebo odebírat pouze tvůrce znalostních asistentů. Každý uživatel s oprávněním CAN MANAGE může aktualizovat název a popis zdroje znalostí a synchronizovat zdroje znalostí.

Můžete vytvořit koncept více změn najednou – například přidat nový zdroj, odebrat existující a aktualizovat popis jiného – a potom použít všechny změny současně po kliknutí na tlačítko Uložit a aktualizovat.

Přidání zdroje znalostí

  1. Na stránce konfigurace agenta přejděte na kartu Zdroje .
  2. Klikněte na + Přidat pod existující karty zdrojů znalostí.
  3. Vyberte typ zdroje znalostí, který chcete přidat (soubory ve svazku katalogu Unity, soubory v tabulce katalogu Unity nebo index vyhledávání AI) a nakonfigurujte ho podle pokynů v kroku 1: Konfigurace agenta.
  4. Klikněte na Uložit a aktualizovat.

Agent začne synchronizovat nový zdroj znalostí. Stávající zdroje znalostí a jejich data nejsou ovlivněny.

Note

Pro jednoho asistenta znalostí můžete poskytnout až 10 zdrojů znalostí. Přidání zdroje souborů spustí úlohu příjmu dat, která může nějakou dobu trvat v závislosti na objemu dat.

Odebrání zdroje znalostí

  1. Na stránce konfigurace agenta přejděte na kartu Zdroje .
  2. Najeďte myší na kartu zdroje znalostí, kterou chcete odebrat, a klikněte na ikonu koše. V pravém horním rohu.
  3. V potvrzovací dialogovém okně klikněte na Potvrdit a odeberte zdroj.
  4. Klikněte na Uložit a aktualizovat.

Zdroj znalostí a související data se z agenta odeberou. Tato akce není snadno nevratná, protože opětovné přidání zdroje vyžaduje opětovné ingestování dat.

Important

Poslední zbývající zdroj znalostí nelze odebrat. Asistent znalostí musí mít vždy alespoň jeden zdroj znalostí.

Aktualizace podrobností o zdroji znalostí

Název a popis existujícího zdroje znalostí můžete aktualizovat. Tyto podrobnosti pomáhají agentu pochopit, kdy použít jednotlivé zdroje.

  1. Na stránce konfigurace agenta přejděte na kartu Zdroje .
  2. Najeďte myší na kartu zdroje znalostí, kterou chcete upravit, a klikněte na ikonu tužky.
  3. Aktualizujte pole Název nebo Popis .
  4. Klikněte na Uložit a aktualizovat.

Správa oprávnění

Ve výchozím nastavení mají k agentu oprávnění jenom autoři agentů a správci pracovního prostoru. Pokud chcete ostatním uživatelům povolit úpravy nebo dotazování agenta, musíte jim explicitně udělit oprávnění.

Správa oprávnění pro vašeho agenta:

  1. Otevřete agenta na stránce Agents.
  2. Nahoře klikněte na ikonu nabídky Kebab. nabídka kebabu.
  3. Klikněte na Spravovat oprávnění.
  4. V okně Nastavení oprávnění vyberte uživatele, skupinu nebo instanční objekt.
  5. Vyberte oprávnění k udělení:
    • Může spravovat: Umožňuje správu agenta, včetně nastavení oprávnění, úprav konfigurace agenta a zlepšení jeho kvality.
    • Dotaz: Umožňuje dotazování koncového bodu agenta v AI Playground a prostřednictvím rozhraní API. Uživatelé, kteří mají pouze toto oprávnění, nemůžou zobrazit ani upravovat agenta na stránce Agenti.
  6. Klikněte na tlačítko Přidat.
  7. Klikněte na Uložit.

Important

Zdroje znalostí může přidávat nebo odebírat pouze tvůrce znalostních asistentů. Každý uživatel s oprávněním CAN MANAGE k asistentovi znalostí může synchronizovat zdroje znalostí a aktualizovat název a popis zdroje znalostí.

Dotazujte koncový bod agenta

Na stránce agenta kliknutím na koncový bod otevřete koncový bod agenta a zobrazte podrobnosti.

Je možné dotazovat vytvořený koncový bod znalostního asistenta několika způsoby. Jako výchozí bod použijte příklady kódu uvedené v AI Playground:

  1. Klikněte na Otevřít v dětském hřišti.
  2. V Dětském hřišti klikněte na Získat kód.
  3. Zvolte způsob použití koncového bodu:
    • V příkladu kódu vyberte rozhraní API curl pro dotazování koncového bodu pomocí nástroje curl.
    • Vyberte Python API pro příklad kódu pro interakci s koncovým bodem pomocí Python.

Správa asistentů znalostí pomocí sady Databricks SDK

Sadu Databricks SDK pro Python můžete použít k programovému vytváření a správě asistentů znalostí a jejich zdrojů znalostí. Úplný seznam dostupných operací rozhraní API najdete v referenčních informacích k rozhraní API asistentů znalostí.

Vytvoření asistenta znalostí

Následující příklad vytvoří nového asistenta znalostí s zobrazovaným názvem, popisem a pokyny.

from databricks.sdk import WorkspaceClient
from databricks.sdk.service.knowledgeassistants import KnowledgeAssistant

w = WorkspaceClient()

knowledge_assistant = KnowledgeAssistant(
    display_name="<display-name>",
    description="<description>",
    instructions="<instructions>",
)
created = w.knowledge_assistants.create_knowledge_assistant(knowledge_assistant=knowledge_assistant)
print(created)

Nahraďte <display-name>, <description> a <instructions> hodnotami pro svého asistenta znalostí.

Správa zdrojů znalostí

Pomocí sady SDK můžete přidávat, odebírat a aktualizovat zdroje znalostí v existujícím pomocníkovi pro znalostní bázi.

Přidání zdroje znalostí

Následující příklad přidá zdroj znalostí ze souborů ve svazku katalogu Unity do existujícího pomocníka znalostí.

from databricks.sdk import WorkspaceClient
from databricks.sdk.service.knowledgeassistants import KnowledgeSource, FilesSpec

w = WorkspaceClient()

files_source = KnowledgeSource(
    display_name="<knowledge-source-name>",
    description="<knowledge-source-description>",
    source_type="files",
    files=FilesSpec(
        path="<volume-path>",
    ),
)

created_source = w.knowledge_assistants.create_knowledge_source(
    parent="knowledge-assistants/<knowledge-assistant-id>",
    knowledge_source=files_source,
)
print(created_source)

Pokud chcete místo toho přidat zdroj indexu vyhledávání AI, použijte IndexSpec:

from databricks.sdk.service.knowledgeassistants import KnowledgeSource, IndexSpec

index_source = KnowledgeSource(
    display_name="<knowledge-source-name>",
    description="<knowledge-source-description>",
    source_type="index",
    index=IndexSpec(
        index_name="<catalog.schema.index-name>",
        text_col="<text-column>",
        doc_uri_col="<doc-uri-column>",
    ),
)

created_source = w.knowledge_assistants.create_knowledge_source(
    parent="knowledge-assistants/<knowledge-assistant-id>",
    knowledge_source=index_source,
)
print(created_source)

Odebrání zdroje znalostí

Následující příklad odstraní zdroj znalostí z pomocníka pro znalosti.

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

w.knowledge_assistants.delete_knowledge_source(
    name="knowledge-assistants/<knowledge-assistant-id>/knowledge-sources/<knowledge-source-id>",
)

Aktualizace zdroje znalostí

Následující příklad aktualizuje zobrazovaný název a popis existujícího zdroje znalostí.

from databricks.sdk import WorkspaceClient
from databricks.sdk.service.knowledgeassistants import KnowledgeSource

w = WorkspaceClient()

updated_source = w.knowledge_assistants.update_knowledge_source(
    name="knowledge-assistants/<knowledge-assistant-id>/knowledge-sources/<knowledge-source-id>",
    knowledge_source=KnowledgeSource(
        display_name="<new-name>",
        description="<new-description>",
    ),
    update_mask="display_name,description",
)
print(updated_source)

Povolená pole v update_mask: display_name, description.

Synchronizace zdrojů znalostí

Po přidání nebo aktualizaci souborů ve zdroji znalostí založeném na souborech (například svazku nebo tabulky katalogu Unity) aktivujte synchronizaci, která aktualizuje index pomocníka znalostí s nejnovějším obsahem souboru.

Note

Zdroje znalostí založené na indexech se aktualizují automaticky a nevyžadují ruční synchronizaci.

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

w.knowledge_assistants.sync_knowledge_sources(
    name="knowledge-assistants/<knowledge-assistant-id>",
)

Migrace znalostního asistenta mezi pracovní prostory

Sadu SDK můžete použít k replikaci asistenta znalostí z jednoho pracovního prostoru do druhého. Následující příklad načte asistenta znalostí ze zdrojového pracovního prostoru a znovu ho vytvoří spolu s jeho zdroji znalostí v cílovém pracovním prostoru.

Note

Zdroje znalostí odkazované v cílovém pracovním prostoru (například indexy vyhledávání AI nebo svazky katalogu Unity) už musí existovat v cílovém pracovním prostoru před vytvořením zdrojů znalostí.

from databricks.sdk import WorkspaceClient
from databricks.sdk.service.knowledgeassistants import (
    Example,
    KnowledgeAssistant,
    KnowledgeSource,
    IndexSpec,
    FilesSpec,
)

# Retrieve the knowledge assistant from the source workspace
source_client = WorkspaceClient()
ka = source_client.knowledge_assistants.get_knowledge_assistant(name="<source-knowledge-assistant-name>")
print(ka.display_name, ka.description, ka.instructions)

# Set up the client for the target workspace
target_client = WorkspaceClient(
    host="<target-workspace-url>",
    token="<target-workspace-token>",
)

# Create the knowledge assistant in the target workspace
knowledge_assistant = KnowledgeAssistant(
    display_name=ka.display_name,
    description=ka.description,
    instructions=ka.instructions,
)
created = target_client.knowledge_assistants.create_knowledge_assistant(knowledge_assistant=knowledge_assistant)
print(created)

# Re-create knowledge sources in the target workspace
index_source = KnowledgeSource(
    display_name="<knowledge-source-name>",
    description="<knowledge-source-description>",
    source_type="index",
    index=IndexSpec(
        index_name="<catalog.schema.index-name>",
        text_col="<text-column>",
        doc_uri_col="<doc-uri-column>",
    ),
)

files_source = KnowledgeSource(
    display_name="<knowledge-source-name>",
    description="<knowledge-source-description>",
    source_type="files",
    files=FilesSpec(
        path="<volume-path>",
    ),
)

created_index_source = target_client.knowledge_assistants.create_knowledge_source(
    parent=created.name,
    knowledge_source=index_source,
)
print(created_index_source)

created_files_source = target_client.knowledge_assistants.create_knowledge_source(
    parent=created.name,
    knowledge_source=files_source,
)
print(created_files_source)

# Re-create examples in the target knowledge assistant
for ex in source_client.knowledge_assistants.list_examples(parent=ka.name):
    example = source_client.knowledge_assistants.get_example(name=ex.name)
    target_client.knowledge_assistants.create_example(
        parent=created.name,
        example=Example(
            question=example.question,
            guidelines=example.guidelines,
        ),
    )

Zástupné hodnoty nahraďte příslušnými hodnotami pro vaše zdrojové a cílové pracovní prostory. Formát <source-knowledge-assistant-name> následuje knowledge-assistants/<knowledge-assistant-id>.

Vyhodnoťte svého asistenta znalostí

Tento poznámkový blok ukazuje, jak vyhodnotit Pomocníka pro znalostní bázi pomocí kurátorovaných testovacích datových sad a vlastních výkonnostních metrik.

Pořiďte si notebook

Limitations

  • Soubory větší než 50 MB se během příjmu dat automaticky přeskočí a nejsou zahrnuty do znalostní báze.
  • Soubory PDF, DOC, DOCX, PPT a PPTX s více než 500 stránkami se během příjmu dat přeskočí. U PowerPoint souborů (PPT, PPTX) se každý snímek počítá jako stránka. Soubory TXT a MD nemají žádný limit stránky. Příjem dat používá ai_parse_document, který má limit 500 stránek na dokument.
  • Soubory s názvy začínající podtržítkem (_) nebo tečkou (.) se během příjmu dat automaticky přeskočí a nezahrnou se do znalostní báze.
  • Pro zdroje znalostí, které používají soubory z tabulky katalogu Unity, se ingestuje pouze vybraný sloupec obsahu. Jiné sloupce ve zdroji znalostí tabulky se nepoužívají.
  • Podporují se pouze indexy AI Search, které používají jeden z následujících modelů vkládání: databricks-gte-large-en, databricks-bge-large-ennebo databricks-qwen3-embedding-0-6b.