From cb6052820e44d9f565e7e2ca4fdbd16241078ac8 Mon Sep 17 00:00:00 2001 From: Hossein Salari Date: Wed, 25 Feb 2026 17:27:43 +0330 Subject: [PATCH] feat: connect llm_base tab to backend api --- .env | 2 +- components/tabs/llmPanel.js | 51 ++- components/ui/ResultBox.jsx | 20 +- package.json | 2 + pages/index.js | 36 +- yarn.lock | 683 +++++++++++++++++++++++++++++++++++- 6 files changed, 763 insertions(+), 31 deletions(-) diff --git a/.env b/.env index 42723dc..e9c9ddd 100644 --- a/.env +++ b/.env @@ -1 +1 @@ -NEXT_PUBLIC_BASE_URL=https://api.d.aiengines.ir/rasad/v1 +NEXT_PUBLIC_BASE_URL=http://192.168.10.87:8070 diff --git a/components/tabs/llmPanel.js b/components/tabs/llmPanel.js index e7c3dd4..e7821c0 100644 --- a/components/tabs/llmPanel.js +++ b/components/tabs/llmPanel.js @@ -21,12 +21,37 @@ import { FaDraft2Digital } from "react-icons/fa"; import { FaPlay } from "react-icons/fa"; import { useForm } from "react-hook-form"; import ResultBox from "../ui/ResultBox"; +import useSWRMutation from "swr/mutation"; +import axiosInstance, { baseUrl } from "@/lib/api"; +import { useState } from "react"; -export default function LlmPanel() { +const postRequest = async (url, { arg }) => { + const response = await axiosInstance.post(baseUrl + url, arg); + return response?.data; +}; + +export default function LlmPanel({ filters }) { const { register, handleSubmit } = useForm(); + const [generatedText, setGeneratedText] = useState(""); - const addSubmit = (e) => { - console.log(e); + const { trigger: triggerGenerateText, isMutating: isGeneratingText } = + useSWRMutation("/content/content/base", postRequest, { + onSuccess: (data) => setGeneratedText(data?.content), + }); + + const onSubmit = (data) => { + triggerGenerateText({ + model: filters?.tab_menu, + messages: [ + { + role: "user", + content: data.content, + }, + ], + max_tokens: data.max_tokens, + temperature: 0.7, + number: data.number, + }); }; return ( @@ -37,7 +62,7 @@ export default function LlmPanel() { alignItems="start" overflowY="auto" as={"form"} - onSubmit={handleSubmit(addSubmit)} + onSubmit={handleSubmit(onSubmit)} > {" "} @@ -54,7 +79,7 @@ export default function LlmPanel() { /> حداکثر تعداد توکن: - + @@ -85,9 +110,15 @@ export default function LlmPanel() { /> پرامپت: -