Files
ekzamen-samokorrektiruyusch…/SOLUTION.md
T

2.3 KiB
Raw Blame History

Что реализовано

  • В package.json добавлен пакет langchain-openai (версия ^0.1.0).
  • В src/agent.js импорт OpenAI обновлён на langchain-openai.
  • Внутри getResponse создаётся экземпляр OpenAI и вызывается метод invoke для получения ответа.
  • В src/index.js остался вызов getResponse, но теперь он использует обновлённый провайдер.

Почему это удовлетворяет требованиям

  • Пакет langchain-openai – это LLM‑провайдер, доступный в npm, как требовалось.
  • Импорт OpenAI теперь указывает на правильный модуль (langchain-openai), что позволяет компилятору/Node найти нужный класс.
  • Функция getResponse использует новый провайдер, поэтому агент действительно обращается к LLM через langchain-openai.

Короткие фрагменты кода

package.json

"dependencies": {
  "langchain-openai": "^0.1.0"
}

src/agent.js

import { OpenAI } from 'langchain-openai';

export async function getResponse(prompt) {
  const model = new OpenAI({
    temperature: 0.7,
    modelName: 'gpt-3.5-turbo'
  });
  const response = await model.invoke(prompt);
  return response;
}

src/index.js

import { getResponse } from './agent.js';

export async function main() {
  const prompt = 'Hello, world! What is the capital of France?';
  const answer = await getResponse(prompt);
  console.log('LLM response:', answer);
}

Ограничения

  • В коде отсутствует проверка наличия ключа API для OpenAI; при отсутствии ключа запрос завершится ошибкой.
  • Нет логирования ошибок внутри getResponse, что затрудняет отладку при сбоях LLM.
  • Тесты не реализованы, поэтому корректность работы не подтверждена автоматически.