Что я пробовал:
Изначально я использовал общедоступный ключ Copilot Cloud API, и все работало нормально (ответы, данные чтение и действия).
После окончания бесплатного пробного периода я переключился на настройку локального сервера с использованием адаптера LangChain и GEMINI_API_KEY.
Чего я хочу:
Мне нужна функция useCopilotAction (например, добавление задач) для работы с моим локальным сервером, так же, как это было с общедоступным ключом Copilot Cloud API.
Подробности:
Я использую модель Gemini-1.5-flash с настраиваемой настройкой сервера в Node.js и реализую действия Copilot через адаптер LangChain. Проблема, с которой я столкнулся, заключается в том, что, хотя ответы на сообщения и читаемые данные работают нормально при настройке моего собственного сервера с использованием моего ключа API Gemini, действия Copilot не запускаются. При использовании общедоступного ключа Copilot Cloud API все работает, включая действия Copilot, но я не могу заставить их запускаться на моем пользовательском сервере.
Настройка пользовательского сервера с использованием Gemini-1.5 -flash-модель с моим собственным ключом Gemini API.
Сообщения и ответы успешно обрабатываются, а читаемые данные работают нормально.
Действия второго пилота не срабатывают в моей пользовательской настройке сервера.
Действия второго пилота работают должным образом. при использовании общедоступного ключа API Copilot Cloud.
Использование адаптера LangChain и среды выполнения CopilotKit для управления взаимодействиями.
Код: Выделить всё
import express from "express";
import {
CopilotRuntime,
LangChainAdapter,
copilotRuntimeNodeHttpEndpoint,
} from "@copilotkit/runtime";
import { ChatGoogleGenerativeAI } from "@langchain/google-genai";
import dotenv from "dotenv";
dotenv.config();
const app = express();
const model = new ChatGoogleGenerativeAI({
model: "gemini-1.5-flash",
apiKey: process.env.GEMINI_API_KEY,
region: "us-central1",
});
const serviceAdapter = new LangChainAdapter({
chainFn: async ({ messages, tools }) => {
return model.bindTools(tools).stream(messages);
},
});
app.use("/copilotkit", (req, res, next) => {
const runtime = new CopilotRuntime();
const handler = copilotRuntimeNodeHttpEndpoint({
endpoint: "/copilotkit",
runtime,
serviceAdapter,
});
return handler(req, res, next);
});
app.listen(4000, () => {
console.log("Listening at http://localhost:4000/copilotkit");
});
Подробнее здесь: https://stackoverflow.com/questions/793 ... gchain-ada
Мобильная версия