Documentação

Componentes de LangChain

Instala com pip install "laya[langchain]". O guia LangChain e LangGraph mostra estes componentes em cadeias e grafos.

Os nomes, tipos, valores predefinidos e código mantêm-se em inglês; o resto é traduzido (as entradas ainda não traduzidas são mostradas no original em inglês).

LayaRouter

LayaRouter(
    criteria: Dict[str, str],
    instructions: str = "Which route should handle this request?",
    confidence_threshold: float = 0.0,
    fallback: Optional[str] = None,
    state_key: Optional[Union[str, Callable[[Any], Any]]] = None,
    agent: Optional[Any] = None,
    base_url: Optional[str] = None,
    api_key: Optional[str] = None,
    model: Optional[str] = None,
    max_len: Optional[int] = None,
    head_max_len: Optional[int] = None,
    lang: Optional[str] = None,
    min_confidence: Optional[float] = None,
    hooks: Optional[Any] = None,
    on_predict_start: Optional[Any] = None,
    on_predict_end: Optional[Any] = None,
    hooks_raise: Optional[bool] = None,
    hooks_timeout: Optional[float] = None,
    kwargs: Any,
)

Classes base: _BatchedRunnable, RunnableSerializable

Aresta condicional do LangGraph e runnable de encaminhamento do LangChain LCEL com latência zero.

Avalia a entrada do utilizador contra critérios tipados em ~33 ms sem geração de tokens. Suporta gating por limiar de confiança e encaminhamento alternativo, e responde a uma lista de entradas numa única passagem partilhada através de batch.

Parâmetros

criteriaDict[str, str]
instructionsstr= "Which route should handle this request?"
confidence_thresholdfloat= 0.0
fallbackOptional[str]= None
state_keyOptional[Union[str, Callable[[Any], Any]]]= None
agentOptional[Any]= None
base_urlOptional[str]= None
api_keyOptional[str]= None
modelOptional[str]= None
max_lenOptional[int]= None
head_max_lenOptional[int]= None
langOptional[str]= None
min_confidenceOptional[float]= None
hooksOptional[Any]= None
on_predict_startOptional[Any]= None
on_predict_endOptional[Any]= None
hooks_raiseOptional[bool]= None
hooks_timeoutOptional[float]= None
kwargsAny

invoke

invoke(input: Any, config: Optional[RunnableConfig] = None) -> str

Encaminha a entrada para uma etiqueta de ramo de destino.

Parâmetros

inputAny
configOptional[RunnableConfig]= None

LayaGuardrail

LayaGuardrail(
    questions: Optional[Dict[str, Any]] = None,
    action: str = "raise",
    rejection_message: str = "I cannot fulfill this request because it violates safety guidelines.",
    threshold: float = 0.5,
    state_key: Optional[Union[str, Callable[[Any], Any]]] = None,
    agent: Optional[Any] = None,
    base_url: Optional[str] = None,
    api_key: Optional[str] = None,
    model: Optional[str] = None,
    max_len: Optional[int] = None,
    head_max_len: Optional[int] = None,
    lang: Optional[str] = None,
    min_confidence: Optional[float] = None,
    hooks: Optional[Any] = None,
    on_predict_start: Optional[Any] = None,
    on_predict_end: Optional[Any] = None,
    hooks_raise: Optional[bool] = None,
    hooks_timeout: Optional[float] = None,
    kwargs: Any,
)

Classes base: _BatchedRunnable, RunnableSerializable

Guardrail inline de menos de 40 ms para cadeias do LangChain e nós do LangGraph.

Filtra injeções de prompt, jailbreaks, dados sensíveis ou critérios de dano personalizados antes de passar as entradas para jusante. Uma lista de entradas é filtrada numa única passagem partilhada através de batch.

threshold é uma probabilidade de violação em [0, 1] para cada pergunta noul e score: para uma pergunta noul aplica-se a noul, e para uma pergunta score à probabilidade de o nível estar no meio da escala ou acima (serious ou severe para o harm_severity predefinido; o nível intermédio conta numa escala ímpar). Os níveis de uma pergunta score devem ir de inofensivo a pior.

Parâmetros

questionsOptional[Dict[str, Any]]= None
actionstr= "raise"
rejection_messagestr= "I cannot fulfill this request because it violates safety guidelines."
thresholdfloat= 0.5
state_keyOptional[Union[str, Callable[[Any], Any]]]= None
agentOptional[Any]= None
base_urlOptional[str]= None
api_keyOptional[str]= None
modelOptional[str]= None
max_lenOptional[int]= None
head_max_lenOptional[int]= None
langOptional[str]= None
min_confidenceOptional[float]= None
hooksOptional[Any]= None
on_predict_startOptional[Any]= None
on_predict_endOptional[Any]= None
hooks_raiseOptional[bool]= None
hooks_timeoutOptional[float]= None
kwargsAny

invoke

invoke(input: Any, config: Optional[RunnableConfig] = None) -> Any

Filtra a entrada contra as perguntas do guardrail.

Parâmetros

inputAny
configOptional[RunnableConfig]= None

LayaGuardrailError

LayaGuardrailError(
    message: str,
    violations: Dict[str, Any],
    raw_decision: Dict[str, Any],
)

Classes base: ValueError

Lançado quando uma entrada viola uma política de guardrail da Laya.

Parâmetros

messagestr
violationsDict[str, Any]
raw_decisionDict[str, Any]

LayaTriage

LayaTriage(
    state_key: Optional[Union[str, Callable[[Any], Any]]] = None,
    agent: Optional[Any] = None,
    base_url: Optional[str] = None,
    api_key: Optional[str] = None,
    model: Optional[str] = None,
    max_len: Optional[int] = None,
    head_max_len: Optional[int] = None,
    lang: Optional[str] = None,
    min_confidence: Optional[float] = None,
    hooks: Optional[Any] = None,
    on_predict_start: Optional[Any] = None,
    on_predict_end: Optional[Any] = None,
    hooks_raise: Optional[bool] = None,
    hooks_timeout: Optional[float] = None,
    kwargs: Any,
)

Classes base: _BatchedRunnable, RunnableSerializable

Nó de triagem de tickets de apoio ao cliente e mensagens recebidas para o LangGraph.

Analisa a intenção, a urgência, a frustração do cliente e o risco de abandono numa única passagem e enriquece o dicionário de estado do grafo. Uma fila de pendentes é triada numa única passagem partilhada através de batch.

Parâmetros

state_keyOptional[Union[str, Callable[[Any], Any]]]= None
agentOptional[Any]= None
base_urlOptional[str]= None
api_keyOptional[str]= None
modelOptional[str]= None
max_lenOptional[int]= None
head_max_lenOptional[int]= None
langOptional[str]= None
min_confidenceOptional[float]= None
hooksOptional[Any]= None
on_predict_startOptional[Any]= None
on_predict_endOptional[Any]= None
hooks_raiseOptional[bool]= None
hooks_timeoutOptional[float]= None
kwargsAny

invoke

invoke(state: Any, config: Optional[RunnableConfig] = None) -> Dict[str, Any]

Faz a triagem do estado e devolve os campos enriquecidos.

Parâmetros

stateAny
configOptional[RunnableConfig]= None

LayaEvaluator

LayaEvaluator(
    questions: Dict[str, Any],
    state_key: Optional[Union[str, Callable[[Any], Any]]] = None,
    agent: Optional[Any] = None,
    base_url: Optional[str] = None,
    api_key: Optional[str] = None,
    model: Optional[str] = None,
    max_len: Optional[int] = None,
    head_max_len: Optional[int] = None,
    lang: Optional[str] = None,
    min_confidence: Optional[float] = None,
    hooks: Optional[Any] = None,
    on_predict_start: Optional[Any] = None,
    on_predict_end: Optional[Any] = None,
    hooks_raise: Optional[bool] = None,
    hooks_timeout: Optional[float] = None,
    kwargs: Any,
)

Classes base: _BatchedRunnable, RunnableSerializable

Classificação de saídas baseada em rúbricas e avaliação de alucinações para o LangChain.

Avalia as respostas do LLM contra critérios sem gerar texto. Uma lista de respostas é classificada numa única passagem partilhada através de batch.

Parâmetros

questionsDict[str, Any]
state_keyOptional[Union[str, Callable[[Any], Any]]]= None
agentOptional[Any]= None
base_urlOptional[str]= None
api_keyOptional[str]= None
modelOptional[str]= None
max_lenOptional[int]= None
head_max_lenOptional[int]= None
langOptional[str]= None
min_confidenceOptional[float]= None
hooksOptional[Any]= None
on_predict_startOptional[Any]= None
on_predict_endOptional[Any]= None
hooks_raiseOptional[bool]= None
hooks_timeoutOptional[float]= None
kwargsAny

evaluate_strings

evaluate_strings(
    prediction: str,
    input: Optional[str] = None,
    kwargs: Any,
) -> Dict[str, Any]

Interface padrão de avaliação de cadeias do LangChain.

Parâmetros

predictionstr
inputOptional[str]= None
kwargsAny