langchain-ai / langchain

🦜🔗 Build context-aware reasoning applications
https://python.langchain.com
MIT License
93.87k stars 15.12k forks source link

Option field llm is not necessary for loadEvaluator with type embedding_distance #27571

Closed trend-ouki-wang closed 2 hours ago

trend-ouki-wang commented 2 hours ago

Checked other resources

Example Code

const {loadEvaluator} = require("langchain/evaluation");
const {AzureOpenAI, AzureChatOpenAI, AzureOpenAIEmbeddings} = require("@langchain/openai");
...
const chain = await loadEvaluator("embedding_distance", {
        embedding: azure_embedding,
        distanceMetric: "euclidean",
    });
...

Error Message and Stack Trace (if applicable)

Error: OpenAI or Azure OpenAI API key or Token Provider not found at new ChatOpenAI (C:\Users\ouki_wang\Desktop\Team\sandbox-companion\node_modules\@langchain\openai\dist\chat_models.cjs:1032:19) at loadEvaluator (C:\Users\ouki_wang\Desktop\Team\sandbox-companion\node_modules\langchain\dist\evaluation\loader.cjs:21:9) at main (C:\Users\ouki_wang\Desktop\Team\sandbox-companion\05-sandbox.js:78:29) at Object. (C:\Users\ouki_wang\Desktop\Team\sandbox-companion\05-sandbox.js:131:1) at Module._compile (node:internal/modules/cjs/loader:1364:14) at Module._extensions..js (node:internal/modules/cjs/loader:1422:10) at Module.load (node:internal/modules/cjs/loader:1203:32) at Module._load (node:internal/modules/cjs/loader:1019:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:128:12) at node:internal/main/run_main_module:28:49

Description

we have tried to call loadEvaluator to get euclidean distance with embedding model. However get error message without llm missing in option fields of loadEvaluator. I think llm field is not necessary when call with type embedding_distance.

System Info

node test.js

trend-ouki-wang commented 2 hours ago

sorry, wrong repo