جستجو برای:
سبد خرید 0
  • صفحه اصلی
  • دوره های آموزشی
    • آموزش کتابخانه Ant Design به سادگی آب خوردن !
    • آموزش ساخت داشبورد حرفه ای با ری اکت !
    • آموزش فریمورک Tailwind CSS به زبان ساده!
    • آموزش HTML و CSS پروژه محور و اصولی !
  • وبلاگ
  • تماس با ما
  • درباره ما
logo-frontendi-150
0
  • خانه
  • دوره ها
  • وبلاگ فِرانت اِندی
  • تماس با ما
ورود / عضویت
  • صفحه اصلی
  • دوره های آموزشی
    • آموزش کتابخانه Ant Design به سادگی آب خوردن !
    • آموزش ساخت داشبورد حرفه ای با ری اکت !
    • آموزش فریمورک Tailwind CSS به زبان ساده!
    • آموزش HTML و CSS پروژه محور و اصولی !
  • وبلاگ
  • تماس با ما
  • درباره ما
ورود / عضویت

وبلاگ

فرانت اندی > وبلاگ فِرانت اِندی > ری اکت > استفاده از OpenAI در React به سادگی آب خوردن!

استفاده از OpenAI در React به سادگی آب خوردن!

25 اردیبهشت 1404
ارسال شده توسط احمد احمدنژاد
ری اکت
استفاده از OpenAI در ری اکت - استفاده از OpenAI در React - ترکیب هوش مصنوعی در ری اکت - هوش مصنوعی در React - کتابخانه openai

اگه به ری اکت مسلط هستی، خوشبختانه میتونی از OpenAI تو پروژه های خودت استفاده کنی و یک عالمه ایده خفن و خلاقانه بصورت رایگان پیاده سازی کنی مثلا : چت بات هوش مصنوعی، مترجم زبان، دستیار پزشکی، مشاور و ..
خود OpenAI ( چت جی پی تی ) یک API رایگان داره که میتونیم تو پروژه های ری اکتی خودمون ازش استفاده کنیم!

نصب کتابخانه OpenAI

برای شروع به کمک دستور زیر کتابخانه OpenAI رو نصب میکنیم:

				
					npm install openai
				
			

خب ! حالا اولین قدم اینه که از OpenAI یک کلید ( API ) بگیریم تا بتونیم از خدماتش استفاده کنیم.

تعریف کلید API ( با بیخیالی کامل )

تو فایل .env توی ریشه پروژه باید این api key رو قرار بدیم ( البته ک اینکار به لحاظ امنیتی کار درستی نیست چون این api key میتونه لو بره – راهکار درستش پیاده سازی یک middleware هست ):

				
					// .env
REACT_APP_OPENAI_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxx

				
			

شروع استفاده از OpenAI داخل کامپوننت ری اکتی!

حالا میتونیم یه کامپوننت بسازیم و کد زیر رو داخلش قرار بدیم:

				
					// src/ChatBot.js
import React, { useState } from 'react';
import { OpenAI } from 'openai';

const openai = new OpenAI({
  apiKey: process.env.REACT_APP_OPENAI_KEY,
  dangerouslyAllowBrowser: true, 
});

function ChatBot() {
  const [input, setInput] = useState('');
  const [response, setResponse] = useState('');

  const sendMessage = async () => {
    const chatCompletion = await openai.chat.completions.create({
      model: 'gpt-4o', // یا gpt-3.5-turbo
      messages: [{ role: 'user', content: input }],
    });

    setResponse(chatCompletion.choices[0]?.message?.content || 'پاسخی نبود');
  };

  return (
    <div style={{ padding: '2rem' }}>
      <h2>💬 چت‌بات باحال با GPT</h2>
      <input
        value={input}
        onChange={(e) => setInput(e.target.value)}
        placeholder="سؤالت رو بنویس"
        style={{ width: '100%', padding: '0.5rem' }}
      />
      <button onClick={sendMessage} style={{ marginTop: '1rem' }}>
        ارسال
      </button>
      <div style={{ marginTop: '2rem' }}>
        <strong>پاسخ:</strong>
        <p>{response}</p>
      </div>
    </div>
  );
}

export default ChatBot;

				
			

تو کامپوننت بالا ما یک Chat Bot هوش مصنوعی به کمک OpenAI ساختیم، حالا برای اینکه نمایش داده بشه باید کامپوننت بالارو فراخوانی کنیم:

				
					// App.js
import React from 'react';
import ChatBot from './ChatBot';

function App() {
  return (
    <div className="App">
      <ChatBot />
    </div>
  );
}

export default App;

				
			

انتخاب نوع مدل هوش مصنوعی OpenAI

بسته به نوع مدل هوش مصنوعی که میخوای، باید مقدار model رو تنظیم کنی. ( بعضیاشون رایگانن، برخی پولی، برخی سریعتر و .. )

پاسخ های استریمینگ

اگه میخوای پاسخ چت بات بجای اینکه یکجا و کامل برگرده، کم کم و خط به خط بیاد ( درست مثل وقتی که تو ChatGPT میبینی متن داره کم کم تایپ میشه ) باید مقدار stream رو تنظیم کنی :

				
					const stream = await client.chat.completions.create({
  model: 'gpt-4o',
  messages: [{ role: 'user', content: 'یه شعر باحال بگو!' }],
  stream: true,
});
				
			

شخصی سازی بیشتر

بسته به نیاز پروژت، کلی شخصی سازی میتونی روی مدل هوش مصنوعی انجام بدی ( از Pagination گرفته تا فیچر آپلود فایل و Voice و .. )
داکیومنت کاملش رو میتونی از صفحه خود openai بخونی.

درباره احمد احمدنژاد

من یه برنامه نویس و توسعه دهنده وب هستم که عاشق دنیای صفر و یکم❤️

نوشته‌های بیشتر از احمد احمدنژاد
قبلی نقشه حرفه ای با کتابخانه React Leaflet ! ( رایگان، ساده و بهینه )
بعدی بلاخره هوش مصنوعی Codex واسه برنامه نویسی توسط OpenAI رونمایی شد!

2 دیدگاه

به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.

  • سعید گفت:
    26 اردیبهشت 1404 در 18:39

    آقا عاااالی بود دم شما گرم

    پاسخ
    • احمد احمدنژاد گفت:
      30 اردیبهشت 1404 در 01:59

      قربانت سعید جان 🙂

      پاسخ

دیدگاهتان را بنویسید لغو پاسخ

جستجو برای:
پیاده سازی و مشاوره فِرانت اِند!

پیاده سازی اصولی و بهینه پروژه های فِرانت اِند در کمترین زمان ممکن 🙂

پیاده سازی و مشاوره

صفحات فِرانت اِندی
  • وبلاگ
  • تماس با ما
  • درباره ما
تماس با ما
  • [email protected]
  • 09102944692
شبکه های اجتماعی
Youtube Instagram Telegram
اشتراک گذاری در شبکه های اجتماعی
ارسال به ایمیل
https://frontendi.com/?p=14592
مرورگر شما از HTML5 پشتیبانی نمی کند.