> ## Documentation Index
> Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Використання LlamaIndex з CometAPI

> Скористайтеся цим посібником, щоб налаштувати LlamaIndex з CometAPI, указавши базовий URL, API key, а також параметри model або provider.

LlamaIndex надає клас `CometLLM` як нативну інтеграцію з CometAPI. Використовуйте його для роботи RAG-конвеєрів, агентів і ланцюжків LLM з будь-якою моделлю з каталогу CometAPI.

## Передумови

* Python 3.8+
* Обліковий запис CometAPI з активним API key — [отримайте його тут](https://www.cometapi.com/console/token)

<Steps>
  <Step title="Установіть інтеграцію LlamaIndex CometAPI">
    ```bash theme={null}
    pip install llama-index-llms-cometapi llama-index
    ```
  </Step>

  <Step title="Установіть свій API key">
    ```python theme={null}
    from llama_index.llms.cometapi import CometLLM
    import os

    os.environ["COMETAPI_KEY"] = "<COMETAPI_KEY>"
    api_key = os.getenv("COMETAPI_KEY")
    ```

    <Note>
      Використання змінних середовища безпечніше, ніж жорстке кодування облікових даних у скриптах.
    </Note>
  </Step>

  <Step title="Ініціалізуйте модель і виконайте виклики completion">
    ```python theme={null}
    from llama_index.core.llms import ChatMessage

    llm = CometLLM(
        api_key=api_key,
        max_tokens=256,
        context_window=4096,
        model="your-model-id",
    )

    # Chat call
    messages = [
        ChatMessage(role="system", content="You are a helpful assistant"),
        ChatMessage(role="user", content="Say 'Hi' only!"),
    ]
    resp = llm.chat(messages)
    print(resp)

    # Completion call
    resp = llm.complete("Who is Kaiming He?")
    print(resp)
    ```
  </Step>

  <Step title="Увімкніть Streaming">
    Використовуйте `stream_chat` або `stream_complete` для виводу частинами в реальному часі:

    ```python theme={null}
    # Streaming chat
    message = ChatMessage(role="user", content="Tell me what ResNet is")
    for chunk in llm.stream_chat([message]):
        print(chunk.delta, end="")

    # Streaming completion
    for chunk in llm.stream_complete("Tell me about Large Language Models"):
        print(chunk.delta, end="")
    ```
  </Step>
</Steps>

<AccordionGroup>
  <Accordion title="Поради та усунення несправностей">
    * **Models**: Перегляньте сторінку [CometAPI Models](/uk/overview/models), щоб побачити всі доступні варіанти.
    * **Використання інших моделей**: Ініціалізуйте з іншим поточним model ID, наприклад `CometLLM(api_key=api_key, model="your-model-id", max_tokens=1024)`.
    * **Fine-tuning**: Передавайте `temperature` і `max_tokens` безпосередньо в `CometLLM(...)`.
    * **Обробка помилок**: Обгорніть виклики в `try/except`, щоб перехоплювати помилки ключа або проблеми мережі.
    * **Безпека**: Ніколи не комітьте API keys у систему контролю версій. Використовуйте змінні середовища.
    * **Більше документації**: [документація LlamaIndex](https://docs.llamaindex.ai/) — [швидкий старт CometAPI](/uk/overview/quick-start) — [приклад Colab](https://colab.research.google.com/github/run-llama/llama_index/blob/main/docs/docs/examples/llm/cometapi.ipynb)
  </Accordion>
</AccordionGroup>

<script type="application/ld+json">
  {`
    {
    "@context": "https://schema.org",
    "@graph": [
      {
        "@type": "HowTo",
        "@id": "https://apidoc.cometapi.com/integrations/llamaindex#howto",
        "name": "Використання LlamaIndex з CometAPI",
        "description": "Скористайтеся цим посібником, щоб налаштувати LlamaIndex з CometAPI, встановивши базовий URL, API key і параметри model або provider.",
        "step": [
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/llamaindex#step-1",
            "position": 1,
            "name": "Установіть інтеграцію LlamaIndex CometAPI",
            "text": "Виконайте крок «Установіть інтеграцію LlamaIndex CometAPI» у посібнику «Використання LlamaIndex з CometAPI»."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/llamaindex#step-2",
            "position": 2,
            "name": "Установіть свій API key",
            "text": "Збережіть свій API key CometAPI у змінній середовища або полі налаштувань, яке використовує інтеграція."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/llamaindex#step-3",
            "position": 3,
            "name": "Ініціалізуйте модель і виконайте виклики completion",
            "text": "Виконайте крок «Ініціалізуйте модель і виконайте виклики completion» у посібнику «Використання LlamaIndex з CometAPI»."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/llamaindex#step-4",
            "position": 4,
            "name": "Увімкніть Streaming",
            "text": "Виконайте крок «Увімкніть Streaming» у посібнику «Використання LlamaIndex з CometAPI»."
          }
        ]
      },
      {
        "@type": "BreadcrumbList",
        "itemListElement": [
          {
            "@type": "ListItem",
            "position": 1,
            "name": "Документація CometAPI",
            "item": "https://apidoc.cometapi.com/"
          },
          {
            "@type": "ListItem",
            "position": 2,
            "name": "Інтеграції",
            "item": "https://apidoc.cometapi.com/integrations"
          },
          {
            "@type": "ListItem",
            "position": 3,
            "name": "Використання LlamaIndex з CometAPI",
            "item": "https://apidoc.cometapi.com/integrations/llamaindex"
          }
        ]
      }
    ]
    }
    `}
</script>
