llama-index

Форк
0
34 строки · 990.0 Байт
1
"""LLM Prompt Program."""
2

3
from abc import abstractmethod
4
from typing import Any, Generic, Optional, Type, TypeVar
5

6
from llama_index.legacy.bridge.pydantic import BaseModel
7
from llama_index.legacy.prompts.base import PromptTemplate
8
from llama_index.legacy.types import BasePydanticProgram, Model
9

10
LM = TypeVar("LM")
11

12

13
class BaseLLMFunctionProgram(BasePydanticProgram[BaseModel], Generic[LM]):
14
    """Base LLM Prompt Program.
15

16
    This is a base class for LLM endpoints that can return
17
    a structured output given the prompt.
18

19
    NOTE: this only works for structured endpoints atm
20
    (does not work for text completion endpoints.)
21

22
    """
23

24
    @classmethod
25
    @abstractmethod
26
    def from_defaults(
27
        cls,
28
        output_cls: Type[Model],
29
        prompt_template_str: Optional[str] = None,
30
        prompt: Optional[PromptTemplate] = None,
31
        llm: Optional[LM] = None,
32
        **kwargs: Any,
33
    ) -> "BaseLLMFunctionProgram":
34
        """Initialize program from defaults."""
35

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.