Composants LangChain
Installe avec pip install "laya[langchain]". Le guide LangChain et LangGraph
montre ces composants dans des chaînes et des graphes.
Les noms, types, valeurs par défaut et le code restent en anglais ; le reste est traduit (les entrées non encore traduites s'affichent dans l'original anglais).
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 de base: _BatchedRunnable, RunnableSerializable
Arête conditionnelle LangGraph et runnable de routage LangChain LCEL à latence nulle.
Évalue l’entrée utilisateur contre des critères typés en ~33 ms sans génération de jetons.
Prend en charge le gating par seuil de confiance et le routage de repli, et répond à une liste
d’entrées en une seule passe avant partagée via batch.
Paramètres
criteriaDict[str, str]instructionsstr="Which route should handle this request?"confidence_thresholdfloat=0.0fallbackOptional[str]=Nonestate_keyOptional[Union[str, Callable[[Any], Any]]]=NoneagentOptional[Any]=Nonebase_urlOptional[str]=Noneapi_keyOptional[str]=NonemodelOptional[str]=Nonemax_lenOptional[int]=Nonehead_max_lenOptional[int]=NonelangOptional[str]=Nonemin_confidenceOptional[float]=NonehooksOptional[Any]=Noneon_predict_startOptional[Any]=Noneon_predict_endOptional[Any]=Nonehooks_raiseOptional[bool]=Nonehooks_timeoutOptional[float]=NonekwargsAny
invoke
invoke(input: Any, config: Optional[RunnableConfig] = None) -> strRoute l’entrée vers une étiquette de branche de destination.
Paramètres
inputAnyconfigOptional[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 de base: _BatchedRunnable, RunnableSerializable
Garde-fou en ligne de moins de 40 ms pour les chaînes LangChain et les nœuds LangGraph.
Filtre les injections de prompt, les jailbreaks, les données sensibles ou des critères
de nuisance personnalisés avant de transmettre les entrées en aval. Une liste d’entrées est filtrée en une
seule passe avant partagée via batch.
threshold est une probabilité de violation dans [0, 1] pour chaque question noul et score :
pour une question noul il s’applique à noul, et pour une question score
à la probabilité que le niveau soit au milieu de l’échelle ou au-dessus
(serious ou severe pour le harm_severity par défaut ; le niveau médian
compte sur une échelle impaire). Les niveaux d’une question score doivent aller d’inoffensif
à pire.
Paramètres
questionsOptional[Dict[str, Any]]=Noneactionstr="raise"rejection_messagestr="I cannot fulfill this request because it violates safety guidelines."thresholdfloat=0.5state_keyOptional[Union[str, Callable[[Any], Any]]]=NoneagentOptional[Any]=Nonebase_urlOptional[str]=Noneapi_keyOptional[str]=NonemodelOptional[str]=Nonemax_lenOptional[int]=Nonehead_max_lenOptional[int]=NonelangOptional[str]=Nonemin_confidenceOptional[float]=NonehooksOptional[Any]=Noneon_predict_startOptional[Any]=Noneon_predict_endOptional[Any]=Nonehooks_raiseOptional[bool]=Nonehooks_timeoutOptional[float]=NonekwargsAny
invoke
invoke(input: Any, config: Optional[RunnableConfig] = None) -> AnyFiltre l’entrée contre les questions du garde-fou.
Paramètres
inputAnyconfigOptional[RunnableConfig]=None
LayaGuardrailError
LayaGuardrailError(
message: str,
violations: Dict[str, Any],
raw_decision: Dict[str, Any],
)Classes de base: ValueError
Levée quand une entrée enfreint une politique de garde-fou de Laya.
Paramètres
messagestrviolationsDict[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 de base: _BatchedRunnable, RunnableSerializable
Nœud de triage des tickets de support client et des messages entrants pour LangGraph.
Analyse l’intention, l’urgence, la frustration du client et le risque d’attrition en une seule
passe avant et enrichit le dictionnaire d’état du graphe. Un arriéré est trié en une seule
passe avant partagée via batch.
Paramètres
state_keyOptional[Union[str, Callable[[Any], Any]]]=NoneagentOptional[Any]=Nonebase_urlOptional[str]=Noneapi_keyOptional[str]=NonemodelOptional[str]=Nonemax_lenOptional[int]=Nonehead_max_lenOptional[int]=NonelangOptional[str]=Nonemin_confidenceOptional[float]=NonehooksOptional[Any]=Noneon_predict_startOptional[Any]=Noneon_predict_endOptional[Any]=Nonehooks_raiseOptional[bool]=Nonehooks_timeoutOptional[float]=NonekwargsAny
invoke
invoke(state: Any, config: Optional[RunnableConfig] = None) -> Dict[str, Any]Trie l’état et renvoie les champs enrichis.
Paramètres
stateAnyconfigOptional[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 de base: _BatchedRunnable, RunnableSerializable
Notation des sorties par grille de critères et évaluation des hallucinations pour LangChain.
Évalue les réponses du LLM contre des critères sans générer de texte. Une liste de
réponses est notée en une seule passe avant partagée via batch.
Paramètres
questionsDict[str, Any]state_keyOptional[Union[str, Callable[[Any], Any]]]=NoneagentOptional[Any]=Nonebase_urlOptional[str]=Noneapi_keyOptional[str]=NonemodelOptional[str]=Nonemax_lenOptional[int]=Nonehead_max_lenOptional[int]=NonelangOptional[str]=Nonemin_confidenceOptional[float]=NonehooksOptional[Any]=Noneon_predict_startOptional[Any]=Noneon_predict_endOptional[Any]=Nonehooks_raiseOptional[bool]=Nonehooks_timeoutOptional[float]=NonekwargsAny
evaluate_strings
evaluate_strings(
prediction: str,
input: Optional[str] = None,
kwargs: Any,
) -> Dict[str, Any]Interface d’évaluation de chaînes standard de LangChain.
Paramètres
predictionstrinputOptional[str]=NonekwargsAny