برنامه نویسی

برای طبقه بندی اسناد یک برنامه هوش مصنوعی بسازید: یک راهنمای گام به گام

این قسمت 2 از سری برنامه های توسعه AI است که نشان می دهد نحوه ساخت برنامه ای که از LLMS برای خودکارسازی طبقه بندی اسناد استفاده می کند. در جمع بندی مقاله ، قسمت 1 را برای استفاده از یک مورد استفاده کنید.

در دنیای مدرن مبتنی بر داده ، سازمان ها دارای حجم فزاینده ای از اسناد هستند ، از فاکتورها و قراردادها گرفته تا گزارش ها و سوابق. مرتب سازی دستی و طبقه بندی این اسناد اکنون چیزی از گذشته است-یک کار دلهره آور که وقت گیر ، منابع پر مصرف و مستعد خطای انسانی است. طبقه بندی نادرست می تواند منجر به ناکارآمدی عملیاتی ، خطرات انطباق و افزایش هزینه ها شود.

طبقه بندی اسناد با هوش مصنوعی این فرآیند را خودکار می کند و به سازمان ها این امکان را می دهد تا حجم زیادی از اسناد را به سرعت و دقیق انجام دهند.

این وبلاگ نحوه ساخت یک برنامه هوش مصنوعی را نشان می دهد که اسناد شما را با استفاده از هادی orkes طبقه بندی می کند.

ساخت جریان برنامه طبقه بندی کننده سند

طبقه بندی اسناد فرآیند طبقه بندی اسناد به دسته های از پیش تعریف شده بر اساس محتوای آنها است. این ماده به طور گسترده ای در سراسر صنایع برای ساده سازی مرتب سازی ، طبقه بندی و پردازش حجم زیادی از اسناد مورد استفاده قرار می گیرد.

در این آموزش ، ما یک جریان برنامه AI ایجاد خواهیم کرد که:

  • اسناد PDF را از یک URL مشخص مشخص می کند.
  • آنها را به دسته های از پیش تعریف شده مانند فرم های W2 ، مجوزهای رانندگی ، خرد پرداخت ، نامه های تأیید اشتغال یا برنامه های وام مسکن طبقه بندی می کند.
  • خطاهای مربوط به انواع پرونده های پشتیبانی نشده را کنترل می کند.

بیایید منطق گردش کار را تجزیه کنیم.

گردش کار طبقه بندی سند هوش مصنوعی

گردش کار با یک کار سوئیچ شروع می شود که ارزیابی می کند که آیا URL سند ورودی به یک فایل PDF اشاره می کند (یعنی ، دارای پسوند .pdf است). بر اساس ارزیابی ، سپس یکی از دو مورد را دنبال می کند:

سوئیچ مورد ارزیابی اگر فایل ورودی PDF است یا خیر

  • پیش فرض– اگر پرونده ورودی PDF نباشد. گردش کار به یک کار درون خطی ادامه می یابد که یک پیام خطا ایجاد می کند که نشان دهنده نوع فایل پشتیبانی نشده است ، و به دنبال آن یک کار خاتمه می یابد که گردش کار را متوقف می کند و پیام خطا را نشان می دهد.
  • PDF– اگر پرونده ورودی PDF باشد. گردش کار سپس به یک کار سند GET که محتوای PDF را بازیابی می کند ، حرکت می کند. اگر پرونده مبتنی بر متن باشد ، این کار متن را از سند استخراج می کند.

مرحله بعدی شامل یک کار سوئیچ دیگر است که خروجی را از کار سند GET ارزیابی می کند. اگر سند مبتنی بر متن باشد ، پیش فرض اعدام شده است اگر سند مبتنی بر متن باشد ، گردش کار به OCR_PROCESSING مورد ، که از تشخیص شخصیت نوری (OCR) برای پردازش محتوای تصویر در PDF استفاده می کند.

یک کار کارگر مبتنی بر OCR (ساده) سپس محتوای تصویر را از PDF استخراج می کند. این کار نیاز به یک کارگر خارجی دارد که در خارج از هادی تنظیم شده است تا برای این کار نظرسنجی کند.

پس از آن ، یک کار درون خطی متن استخراج شده را قالب بندی می کند و آن را برای فرآیند طبقه بندی اسناد آماده می کند. مرحله طبقه بندی شامل یک کار کامل متن LLM است که از یک سریع برای طبقه بندی سند در دسته های مختلف استفاده می کند. این کار از یک الگوی سریع ایجاد شده در هادی برای تعیین نوع پرونده استفاده می کند ،

سرانجام ، گردش کار با یک کار درون خطی نتیجه می گیرد که نتایج طبقه بندی را استخراج ، قالب ها و منتشر می کند.

مرحله 1: یک گردش کار طبقه بندی کننده سند ایجاد کنید

برای دنبال کردن آموزش ، بیایید از نسخه رایگان Orkes Developer Edition استفاده کنیم. برای شروع یک حساب کاربری ایجاد کنید.

شما می توانید با استفاده از SDK ، API یا UI هادی ، جریان برنامه را به عنوان گردش کار JSON در هادی ایجاد کنید. برای آزمایش آسانتر ، بیایید یک گردش کار در UI هادی ایجاد کنیم.

اول ، بیایید وظیفه کارگر را که بخشی از گردش کار خواهد بود تعریف کنیم.

برای ایجاد یک تعریف کار:

  1. به نسخه توسعه دهنده Orkes بروید.
  2. در منوی ناوبری سمت چپ ، انتخاب کنید تعاریف > وظیفهبشر
  3. انتخاب کردن + کار را تعریف کنیدبشر
  4. در نام، وارد شوید استخراج کنندهبشر
  5. در شرح، توضیح مختصری از هدف کار را وارد کنید.
  6. انتخاب کردن پس انداز کردن > SAVE را تأیید کنیدبشر

در مرحله بعد ، بیایید یک گردش کار ایجاد کنیم که شامل این کار باشد.

برای ایجاد گردش کار:

  1. رفتن به تعاریف > گردش کار از منوی ناوبری سمت چپ.
  2. انتخاب کردن + گردش کار را تعریف کنیدبشر
  3. انتخاب کنید رمز برگه در سمت راست و چسباندن کد JSON زیر:
{
 "name": "document_classifier_workflow",
 "description": "LLM Powered PDF Document Classification Workflow",
 "version": 1,
 "tasks": [
   {
     "name": "check_for_pdf",
     "taskReferenceName": "check_for_pdf_ref",
     "inputParameters": {
       "url": "${workflow.input.document_url}"
     },
     "type": "SWITCH",
     "decisionCases": {
       "PDF": [
         {
           "name": "get_document_task",
           "taskReferenceName": "get_document_task_ref",
           "inputParameters": {
             "url": "${workflow.input.document_url}",
             "mediaType": "application/pdf"
           },
           "type": "GET_DOCUMENT"
         },
         {
           "name": "check_for_output",
           "taskReferenceName": "check_for_output_ref",
           "inputParameters": {
             "textOutput": "${get_document_task_ref.output.result}"
           },
           "type": "SWITCH",
           "decisionCases": {
             "ocr_processing": [
               {
                 "name": "extractTextFromPDF",
                 "taskReferenceName": "extractTextFromPDF_ref",
                 "inputParameters": {
                   "pdfUrl": "${workflow.input.document_url}"
                 },
                 "type": "SIMPLE"
               }
             ]
           },
           "evaluatorType": "graaljs",
           "expression": "(function () {\n   if($.textOutput === \"\\n\"){\n    return \"ocr_processing\"\n   }\n   return \"defaultCase\"\n  }())"
         },
         {
           "name": "evaluate_text",
           "taskReferenceName": "evaluate_text_ref",
           "inputParameters": {
             "expression": "(function () {\n  if($.getDocumentText === \"\\n\"){\n    const output = $.ocrText.results.map((item) => \n    \"PageNumber: \"+item.page+\"\\nContent: \"+item.text\n  ).join('\\n\\n');\n  \n    return output\n  }\n  return $.getDocumentText;\n})();",
             "evaluatorType": "graaljs",
             "getDocumentText": "${get_document_task_ref.output.result}",
             "ocrText": "${extractTextFromPDF_ref.output}"
           },
           "type": "INLINE"
         },
         {
           "name": "classify_using_llm",
           "taskReferenceName": "classify_using_llm",
           "inputParameters": {
             "promptName": "your-prompt-template",
             "promptVariables": {
               "text": "${evaluate_text_ref.output.result}"
             },
             "llmProvider": "your-llm-provider",
             "model": "your-llm-model"
           },
           "type": "LLM_TEXT_COMPLETE"
         },
         {
           "name": "extract_classification",
           "taskReferenceName": "extract_classification",
           "inputParameters": {
             "expression": "(function(){ \n  let llmResult = new String($.llmResult).trim();\n  if(llmResult === 'NO_MATCH') {\n    return \"This document couldn't be classified by the LLM\";\n  }\n  return \"LLM classified this document as: \" + llmResult;\n})();",
             "evaluatorType": "graaljs",
             "llmResult": "${classify_using_llm.output.result}"
           },
           "type": "INLINE"
         }
       ]
     },
     "defaultCase": [
       {
         "name": "generate_error",
         "taskReferenceName": "generate_error_ref",
         "inputParameters": {
           "expression": "(function(){ \n\n  return \"The filename supplied: \" + $.filename + \" is an unsupported file type. Please try again with a .pdf file\";\n})();",
           "evaluatorType": "graaljs",
           "filename": "${workflow.input.document_url}"
         },
         "type": "INLINE"
       },
       {
         "name": "terminate_task",
         "taskReferenceName": "terminate_task_ref",
         "inputParameters": {
           "terminationStatus": "TERMINATED",
           "terminationReason": "Unsupported file type",
           "workflowOutput": {
             "result": "${generate_error_ref.output}"
           }
         },
         "type": "TERMINATE"
       }
     ],
     "evaluatorType": "graaljs",
     "expression": "$.url.toLowerCase().trim().endsWith(\"pdf\") ? \"PDF\" : \"NOT_SUPPORTED\";"
   }
 ],
 "inputParameters": [
   "document_url"
 ],
 "schemaVersion": 2
}
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

  1. گردش کار را تغییر دهید نام به چیزی منحصر به فرد
  2. انتخاب کردن پس انداز کردن > تأیید کردنبشر

اکنون که گردش کار شما تنظیم شده است ، مرحله بعدی پیکربندی یک کارگر OCR برای استخراج محتوا از PDF های مبتنی بر متن است.

مرحله 2: کارگر OCR را تنظیم کنید

در این مثال ، ما پروژه OCR Worker را با استفاده از node.js. تنظیم خواهیم کرد.

پیش نیازها:

  • node.js نسخه 20.18.2 یا بالاتر.

برای اتصال کارگر Node.js خود با هادی ، به کلیدهای دسترسی از یک برنامه در Orkes Hadnor نیاز دارید.

برای تولید کلیدهای دسترسی:

  1. به نسخه توسعه دهنده Orkes بروید.
  2. در منوی ناوبری سمت چپ ، انتخاب کنید کنترل دسترسی > برنامهبشر
  3. انتخاب کردن + ایجاد برنامهبشر
  4. ورود نام برای برنامه ، و انتخاب کنید پس انداز کردنبشر
  5. در نقش، فعال کردن کارگر نقش
  6. در کلیدهای دسترسی، انتخاب کنید + ایجاد کلید دسترسیبشر
  7. کپی کردن شناسه کلیدی وت راز کلیدی و آنها را با اطمینان ذخیره کنید.

توجه: اگر این آموزش را با Orkes Developer Edition دنبال می کنید ، می توانید مراحل زیر را پرش کنید. با این حال ، اگر از خوشه هادی خود استفاده می کنید ، باید مجوزهای اضافی را برای کارها و گردش کار فعال کنید:

  1. در برنامه شما اجازه بخش ، انتخاب کنید + اضافه کردن اجازهبشر
  2. در گردش کار برگه ، گردش کار خود را جستجو کنید و مجوزها را بخوانید و اجرا کنید.
  3. در وظیفه برگه ، کار را جستجو کنید استخراج کننده و مجوزها را بخوانید و اجرا کنید.
  4. انتخاب کردن اضافه کردن مجوزهابشر

اعطای مجوزهای برنامه برای کارها و گردش کار

برای تنظیم یک کارگر node.js:

  1. یک پوشه برای پروژه خود ایجاد کنید.
  2. یک ترمینال را باز کرده و به پوشه بروید. سپس ، اجرا کنید:
npm init -y
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

  1. دستور زیر را برای نصب وابستگی های مورد نیاز اجرا کنید:
npm install @io-orkes/conductor-javascript @napi-rs/canvas pdfjs-dist tesseract.js
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

  1. یک پرونده index.js را در ریشه پروژه اضافه کنید و کد کارگر زیر را بچسبانید:
import Tesseract from "tesseract.js";
import https from "https";
import { createCanvas } from "@napi-rs/canvas";
import { getDocument } from "pdfjs-dist/legacy/build/pdf.mjs";
import {
  orkesConductorClient,
  TaskManager,
} from "@io-orkes/conductor-javascript";

async function extractTextFromPDF(pdfUrl) {
  try {
    const pdfBuffer = await new Promise((resolve, reject) => {
      https
        .get(pdfUrl, (response) => {
          if (response.statusCode !== 200) {
            reject(new Error(`HTTP ${response.statusCode}`));
            return;
          }

          if (!response.headers["content-type"]?.includes("application/pdf")) {
            reject(new Error("Not a PDF file"));
            return;
          }

          const chunks = [];
          response.on("data", (chunk) => chunks.push(chunk));
          response.on("end", () => resolve(Buffer.concat(chunks)));
        })
        .on("error", reject);
    });

    const pdfDoc = await getDocument(new Uint8Array(pdfBuffer)).promise;
    const results = [];

    for (let pageNum = 1; pageNum <= pdfDoc.numPages; pageNum++) {
      const page = await pdfDoc.getPage(pageNum);
      const viewport = page.getViewport({ scale: 2.0 });
      const canvas = createCanvas(viewport.width, viewport.height);

      await page.render({
        canvasContext: canvas.getContext("2d"),
        viewport: viewport,
      }).promise;

      const {
        data: { text },
      } = await Tesseract.recognize(canvas.toBuffer("image/png"), "eng");

      results.push({ page: pageNum, text: text.trim() });
    }

    return results;
  } catch (error) {
    throw new Error(`PDF processing failed: ${error.message}`);
  }
}

// Conductor worker configuration

async function startWorker() {
  const clientPromise = orkesConductorClient({
    keyId: "YOUR-KEY-ID",
    keySecret: "YOUR-KEY-SECRET",
    serverUrl: "YOUR-CONDUCTOR-CLUSTER-URL/api",
  });

  const client = await clientPromise;

  const pdfWorker = {
    taskDefName: "extractTextFromPDF",
    execute: async ({ inputData: { pdfUrl }, taskId }) => {
      try {
        if (!pdfUrl) {
          return {
            status: "FAILED",
            outputData: { error: "PDF URL is required" },
          };
        }

        const results = await extractTextFromPDF(pdfUrl);

        return {
          status: "COMPLETED",
          outputData: {
            results,
            processedPages: results.length,
          },
        };
      } catch (error) {
        return {
          status: "FAILED",
          outputData: { error: error.message },
        };
      }
    },
  };

  const manager = new TaskManager(client, [pdfWorker], {
    options: { pollInterval: 100, concurrency: 1 },
  });

  console.log("Starting PDF extraction worker...");
  manager.startPolling();

  // Handle graceful shutdown
  process.on("SIGINT", () => {
    console.log("Stopping worker...");
    manager.stopPolling();
    process.exit(0);
  });
}
startWorker();
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

  1. در کد کارگر جایگزین کنید مخفی شما-ID و _هه-کیت-کلید _ با شناسه کلید قبلی کپی شده و راز کلید.
  2. جایگزین “شما“با URL خوشه ای شما. برای نسخه توسعه دهنده Orkes ، از https://developer.orkescloud.com/api استفاده کنید.
  3. کارگر را اجرا کنید:
node index.js
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

اکنون که گردش کار و کارگر شما آماده شده است ، وقت آن است که با اضافه کردن ادغام LLM خود ، آن را به کار بگیرید.

مرحله 3: ادغام LLM مورد نظر خود را اضافه کنید

هادی Orkes با بسیاری از ارائه دهندگان LLM ادغام می کند. مرحله بعدی اضافه کردن ادغام در خوشه هادی با ارائه دهنده LLM مورد نظر شما است.

برای افزودن ادغام:

  1. رفتن به ادغام از منوی ناوبری سمت چپ در خوشه هادی خود.
  2. انتخاب کردن + ادغام جدیدبشر

اضافه کردن ادغام جدید

  1. در AI/LLM بخش ، ارائه دهنده LLM مورد نظر خود را انتخاب کرده و انتخاب کنید + اضافه کردنبشر

پارامترهای پیکربندی بسته به پلت فرم AI/LLM در یکپارچه سازی متفاوت است. برای به دست آوردن پارامترها به راهنماهای ادغام مربوطه مراجعه کنید.

  1. کلیدهای API و سایر پارامترها را بر اساس ارائه دهنده انتخاب شده LLM وارد کنید.
  2. انتخاب کردن پس انداز کردنبشر

ادغام LLM اضافه شده است. مرحله بعدی اضافه کردن یک مدل خاص است. مهم است که مدلی را انتخاب کنید که با مورد استفاده شما هماهنگ باشد.

برای افزودن یک مدل به ادغام خود:

  1. در ادغام صفحه ، انتخاب کنید با دکمه کنار ادغام تازه اضافه شده خود.
  2. انتخاب کردن + مدل جدیدبشر
  3. وارد کردن نام مدل وت شرحبشر
  4. اطمینان حاصل کنید که فعال Toggle روشن شده و SAVE را انتخاب کنید.

هم اکنون ادغام ها تنظیم شده و آماده استفاده هستند. بیایید یک سریع AI ایجاد کنیم که از این ادغام برای طبقه بندی اسناد به دسته های مناسب استفاده کند.

مرحله 4: با استفاده از سازنده سریع AI Orkes ، یک الگوی سریع ایجاد کنید

سریع نقش مهمی در هدایت مدل LLM برای عمل به روشی خاص ایفا می کند. برای گردش کار طبقه بندی اسناد ما ، سریع باید با دقت ساخته شود تا مدل بتواند سند را در گروه های مناسب شناسایی و طبقه بندی کند.

الگوی سریع برای طبقه بندی اسناد

برای ایجاد سریع AI:

  1. رفتن به تعاریف > AI ارسال می کندبشر
  2. انتخاب کردن + اضافه کردن سریع AIبشر
  3. در نام سریع، یک نام منحصر به فرد برای سریع خود ، مانند “doc_classifier_prompt_yourname” وارد کنید.
  4. در مدل (ها)ادغام را که در مرحله قبل اضافه کرده اید انتخاب کنید. کشویی UI ادغام را به همراه نام مدل لیست می کند. حتماً مناسب را انتخاب کنید.
  5. ورود شرح از آنچه سریع انجام می دهد.
  6. در الگوی سریع، سریع خود را وارد کنید ، که سند را به دسته های مناسب طبقه بندی می کند. به عنوان مثال:
We have a document that was scanned using OCR. The content is ${text}. You need to classify the document based on the provided OCR content. The document could be one of these: W2, Drivers License, Pay stub, Employment Verification Letter, or Mortgage Application. Suppose the provided content does not match with any of those documents. In that case, you must reply NO_MATCH, and in the following line, you must give a human-understandable message about the result and why that determination was made in under three sentences. If the provided content matches, return the values found, including the document type. If the social security number is part of the values, obfuscate the first five digits.
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

در سریع ، ما تعریف کرده ایم ${text} به عنوان متغیری که از خروجی کار قبلی حاصل می شود. این امر هنگامی که ما این سریع را در گردش کار وارد کنیم ، واضح تر می شود.

  1. انتخاب کردن پس انداز کردن > SAVE را تأیید کنیدبشر

این باعث صرفه جویی در الگوی سریع شما می شود. Orkes هادی یک رابط تست داخلی برای آزمایش و اعتبارسنجی سریع شما قبل از اضافه کردن آن به گردش کار فراهم می کند. در مثال ما ، ما را تعریف کرده ایم ${text} متغیر که از خروجی کار استخراج متن قبلی حاصل می شود. به عنوان مثال ، در اینجا به نظر می رسد که یک آزمایش با داده های نمونه به نظر می رسد.

نتایج آزمون نمونه برای الگوی سریع

مرحله 5: ویرایش گردش کار با ادغام LLM و سریع AI

حالا که همه چیز در جای خود قرار دارد ، بیایید همه آن را جمع کنیم و گردش کار را اجرا کنیم.

بیایید به گردش کار ایجاد شده برگردیم:

  1. در نسخه توسعه دهنده Orkes ، به تعاریف > گردش کار و گردش کار ایجاد شده قبلاً را انتخاب کنید.
  2. در classify_using_llm کار ، مقادیر زیر را جایگزین کنید:

اصلاح گردش کار با مدل های ادغام

  • تعویض کردن your-llm-provider با ارائه دهنده LLM یکپارچه خود.
  • تعویض کردن your-llm-model با مدل انتخابی خود
  • تعویض کردن your-prompt-template با سریع خود
  • پارامتر سریع “متن” را به عنوان “$ {ارزیابی_Text_Ref.Output.Result}” اضافه کنید.

می توانید ببینید که text متغیر روی تنظیم شده است ${evaluate_text_ref.output.result}، که نتیجه خروجی است ارزیابی_ت وظیفه ای که محتوای سند PDF را بازیابی می کند.

  1. انتخاب کردن پس انداز کردن > تأیید کردنبشر

حال ، بیایید آزمایش کار خود را انجام دهیم:

  1. انتخاب کردن دویدن برگه را تهیه کنید و URL سند را به عنوان پارامتر ورودی طبقه بندی کنید.
  2. انتخاب کردن گردش کار را اجرا کنیدبشر


// example input params
{
"document_url": "https://image-processing-orkes.s3.amazonaws.com/test-w2-form-full-text.pdf"
}

پس از اجرای گردش کار ، شما به صفحه اجرای گردش کار هدایت می شوید. اگر انتخاب کنید ورودی/خروجی گردش کار برگه ، مقوله ای را که در آن سند طبقه بندی شده است ، مشاهده خواهید کرد.

در اینجا یک نمونه آزمایش آزمایش با یک سند W2 که به عنوان ورودی منتقل شده است:

آزمایش نمونه با یک سند W2

در اینجا یک نمونه آزمایش آزمایش با یک خرد خرد شده به عنوان ورودی ارائه شده است:

نمونه آزمایش نمونه با یک سند خرد پرداخت

ta-da! شما با موفقیت یک جریان برنامه ایجاد کرده اید که اسناد شما را به طور دقیق طبقه بندی می کند.

شما می توانید با استفاده از هادی یا سیم برنامه کاربردی لازم را از طریق SDKS یا API های هادی یا API ها به برنامه های موجود در برنامه های موجود خود از طریق زمین استفاده کنید.

بیایید ببینیم وقتی یک فایل تصویری با پسوند .jpg به عنوان ورودی منتقل می شود چه اتفاقی می افتد.

آزمایش نمونه با یک سند تصویر اجرا می شود

گردش کار خاتمه می یابد ، و شما یک پیام خروجی دریافت خواهید کرد که نشان می دهد نوع پرونده پشتیبانی نشده است.

این گردش کار در حال حاضر برای کار با URL های ورودی با پسوند .pdf طراحی شده است. اما اگر ورودی شما یک فایل تصویری باشد یا سند در مقوله ای قرار نمی گیرد که ذکر نشده است و بدون ایجاد اختلال در گردش کار ، نیاز به تأیید دستی دارد؟

هیچ نگرانی – هادی گوشتخوار شما را تحت پوشش قرار داده است! ما یک نسخه پیشرفته از این گردش کار را برای رسیدگی به این سناریوها یکپارچه تهیه کرده ایم. آماده کشف آن هستید؟ برای آموزش های آینده با ما همراه باشید.

در ضمن ، اگر ایده ای برای بهبود این گردش کار برای پشتیبانی از انواع پرونده های اضافی دارید ، احساس راحتی کنید که در Slack به جامعه ما بپیوندید.

به طور خلاصه ، هادی Orkes به عنوان بهترین انتخاب برای ایجاد جریان برنامه است. این انعطاف پذیری را در سفارشی سازی سریع ارائه می دهد و حریم خصوصی داده ها را در اولویت قرار می دهد ، و اطمینان می دهد که داده های شما در حالی که امکان تنظیمات خصوصی LLM را با هادی فراهم می کند ، ایمن باقی می ماند.

Orkes Cloud یک سرویس هادی کاملاً مدیریت شده و میزبان است که می تواند یکپارچه برای تأمین نیازهای شما مقیاس کند. هنگامی که از هادی از طریق Orkes Cloud استفاده می کنید ، مهندسان شما نیازی به نگرانی در مورد تنظیم ، تنظیم ، وصله و مدیریت خوشه های هادی با کارایی بالا ندارند. آن را با آزمایش رایگان 14 روزه ما برای Orkes Cloud امتحان کنید.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا