আমি গত 4 বছর ধরে এআই অ্যাপ্লিকেশন তৈরি করছি এবং কিছু সময়ের জন্য প্রধান এআই টুলিং প্ল্যাটফর্মগুলিতে অবদান রাখছি।
এই সময়ের মধ্যে, আমি নির্মাণের জন্য অনেক সরঞ্জাম এবং কাঠামো ব্যবহার করেছি;
আমি ওপেন-সোর্স টুলস এবং ফ্রেমওয়ার্কের একটি লোভনীয় তালিকা তৈরি করেছি যা আপনাকে শক্তিশালী এবং নির্ভরযোগ্য AI অ্যাপ্লিকেশন তৈরি করতে সাহায্য করবে। 🔥
নির্দ্বিধায় তাদের GitHub সংগ্রহস্থলগুলি অন্বেষণ করুন, আপনার পছন্দগুলিতে অবদান রাখুন এবং সংগ্রহস্থলগুলিতে তারকাচিহ্নিত করে তাদের সমর্থন করুন৷
আমি অনেক এজেন্ট তৈরি করার চেষ্টা করেছি, এবং সত্যই, তাদের তৈরি করা সহজ হলেও, তাদের সঠিকভাবে পেতে এটি একটি সম্পূর্ণ ভিন্ন বল খেলা।
দক্ষ এআই এজেন্ট তৈরি করতে যা আসলে কাজ করে তার জন্য দক্ষ টুলসেট প্রয়োজন। এখানেই কম্পোজিও ছবিতে আসে।
কম্পোজিও আপনাকে এআই ওয়ার্কফ্লো সম্পন্ন করতে শক্তিশালী টুল এবং ইন্টিগ্রেশন সহ আপনার এআই এজেন্টদের বৃদ্ধি করতে দেয়।
তারা পাইথন এবং জাভাস্ক্রিপ্টের জন্য স্থানীয় সমর্থন প্রদান করে।
নিম্নলিখিত pip
কমান্ড দিয়ে শুরু করুন।
pip install composio-core
একটি GitHub ইন্টিগ্রেশন যোগ করুন।
composio add github
Composio আপনার পক্ষ থেকে ব্যবহারকারীর প্রমাণীকরণ এবং অনুমোদন পরিচালনা করে। এখানে আপনি কিভাবে একটি সংগ্রহস্থল শুরু করতে GitHub ইন্টিগ্রেশন ব্যবহার করতে পারেন।
from openai import OpenAI from composio_openai import ComposioToolSet, App openai_client = OpenAI(api_key="******OPENAIKEY******") # Initialise the Composio Tool Set composio_toolset = ComposioToolSet(api_key="**\\*\\***COMPOSIO_API_KEY**\\*\\***") ## Step 4 # Get GitHub tools that are pre-configured actions = composio_toolset.get_actions(actions=[Action.GITHUB_ACTIVITY_STAR_REPO_FOR_AUTHENTICATED_USER]) ## Step 5 my_task = "Star a repo ComposioHQ/composio on GitHub" # Create a chat completion request to decide on the action response = openai_client.chat.completions.create( model="gpt-4-turbo", tools=actions, # Passing actions we fetched earlier. messages=[ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": my_task} ] )
এজেন্ট ব্যবহার করে প্রদত্ত নির্দেশ কার্যকর করতে এই পাইথন স্ক্রিপ্টটি চালান।
আপনি npm
, yarn
, বা pnpm
ব্যবহার করে এটি ইনস্টল করতে পারেন।
npm install composio-core
ব্যবহারকারীকে তাদের GitHub অ্যাকাউন্ট সংযোগ করতে দেওয়ার জন্য একটি পদ্ধতি সংজ্ঞায়িত করুন।
import { OpenAI } from "openai"; import { OpenAIToolSet } from "composio-core"; const toolset = new OpenAIToolSet({ apiKey: process.env.COMPOSIO_API_KEY, }); async function setupUserConnectionIfNotExists(entityId) { const entity = await toolset.client.getEntity(entityId); const connection = await entity.getConnection('github'); if (!connection) { // If this entity/user hasn't already connected, the account const connection = await entity.initiateConnection(appName); console.log("Log in via: ", connection.redirectUrl); return connection.waitUntilActive(60); } return connection; }
OpenAI SDK-এ প্রয়োজনীয় টুল যোগ করুন এবং executeAgent
ফাংশনে সত্তার নাম দিন।
async function executeAgent(entityName) { const entity = await toolset.client.getEntity(entityName) await setupUserConnectionIfNotExists(entity.id); const tools = await toolset.get_actions({ actions: ["github_activity_star_repo_for_authenticated_user"] }, entity.id); const instruction = "Star a repo ComposioHQ/composio on GitHub" const client = new OpenAI({ apiKey: process.env.OPEN_AI_API_KEY }) const response = await client.chat.completions.create({ model: "gpt-4-turbo", messages: [{ role: "user", content: instruction, }], tools: tools, tool_choice: "auto", }) console.log(response.choices[0].message.tool_calls); await toolset.handle_tool_call(response, entity.id); } executeGithubAgent("joey")
কোডটি কার্যকর করুন এবং এজেন্টকে আপনার জন্য কাজ করতে দিন।
LangChain, LlamaIndex, CrewAi ইত্যাদির মতো বিখ্যাত ফ্রেমওয়ার্কের সাথে কম্পোজিও কাজ করে।
আরও তথ্যের জন্য, অফিসিয়াল ডক্স দেখুন, এবং এমনকি জটিল উদাহরণের জন্য, সংগ্রহস্থলের উদাহরণ বিভাগগুলিতে যান।
Composio.dev সংগ্রহস্থলে তারকাচিহ্নিত করুন ⭐
AI অ্যাপ্লিকেশনগুলি তৈরি করা, বিশেষ করে যাদের দীর্ঘমেয়াদী মেমরির প্রয়োজন, উল্লেখযোগ্য চ্যালেঞ্জগুলি উপস্থাপন করে।
জুলেপ এই সমস্যার সমাধান করছে। এটি উৎপাদনের জন্য প্রস্তুত স্টেটফুল এআই এজেন্ট তৈরির জন্য একটি ওপেন সোর্স ফ্রেমওয়ার্ক।
তারা একটি বিল্ট-ইন স্টেট ম্যানেজমেন্ট সিস্টেম প্রদান করে যা দক্ষ প্রসঙ্গ স্টোরেজ এবং পুনরুদ্ধারে সহায়তা করে।
কনটেক্সট স্টোরেজ কথোপকথনের ধারাবাহিকতা বজায় রাখতে সাহায্য করে, নিশ্চিত করে যে এআই-এর সাথে মিথস্ক্রিয়া সময়ের সাথে সুসঙ্গত এবং প্রাসঙ্গিকভাবে প্রাসঙ্গিক থাকে।
নিম্নলিখিত pip
কমান্ড দিয়ে শুরু করুন।
pip install julep
এটা যেভাবে কাজ করে।
from julep import Client from pprint import pprint import textwrap import os base_url = os.environ.get("JULEP_API_URL") api_key = os.environ.get("JULEP_API_KEY") client = Client(api_key=api_key, base_url=base_url) #create agent agent = client.agents.create( name="Jessica" model="gpt-4", tools=[] # Tools defined here ) #create a user user = client.users.create( name="Anon", about="Average nerdy tech bro/girl spending 8 hours a day on a laptop, ) #create a session situation_prompt = """You are Jessica. You're a stuck-up Cali teenager. You basically complain about everything. You live in Bel-Air, Los Angeles and drag yourself to Curtis High School when necessary. """ session = client.sessions.create( user_id=user.id, agent_id=agent.id, situation=situation_prompt ) #start a conversation user_msg = "hey. what do u think of Starbucks?" response = client.sessions.chat( session_id=session.id, messages=[ { "role": "user", "content": user_msg, "name": "Anon", } ], recall=True, remember=True, ) print("\n".join(textwrap.wrap(response.response[0][0].content, width=100)))
তারা জাভাস্ক্রিপ্ট সমর্থন করে। আরো জন্য তাদের ডকুমেন্টেশন দেখুন.
জুলেপ রিপোজিটরি তারকাচিহ্নিত করুন ⭐
যদি আমি কোড এক্সিকিউশন ক্ষমতা সহ একটি AI অ্যাপ তৈরি করি, যেমন একজন AI টিউটর বা AI ডেটা বিশ্লেষক, তাহলে E2B এর কোড ইন্টারপ্রেটার হবে আমার যাওয়ার টুল।
E2B স্যান্ডবক্স হল AI এজেন্ট এবং অ্যাপের জন্য একটি নিরাপদ ক্লাউড পরিবেশ।
এটি AI কে দীর্ঘ সময়ের জন্য নিরাপদে চালানোর অনুমতি দেয়, মানুষের মতো একই সরঞ্জাম ব্যবহার করে, যেমন GitHub সংগ্রহস্থল এবং ক্লাউড ব্রাউজার।
তারা পাইথন এবং জাভাস্ক্রিপ্ট/টাইপস্ক্রিপ্টের জন্য নেটিভ কোড ইন্টারপ্রেটার SDK অফার করে।
কোড ইন্টারপ্রেটার SDK আপনাকে AI কোড এক্সিকিউশনের জন্য একটি নিরাপদ ছোট VM - E2B স্যান্ডবক্স -এ এআই-জেনারেটেড কোড চালানোর অনুমতি দেয়। স্যান্ডবক্সের ভিতরে একটি জুপিটার সার্ভার রয়েছে যা আপনি তাদের SDK থেকে নিয়ন্ত্রণ করতে পারেন।
নিম্নলিখিত কমান্ড দিয়ে E2B দিয়ে শুরু করুন।
npm i @e2b/code-interpreter
একটি প্রোগ্রাম চালান।
import { CodeInterpreter } from '@e2b/code-interpreter' const sandbox = await CodeInterpreter.create() await sandbox.notebook.execCell('x = 1') const execution = await sandbox.notebook.execCell('x+=1; x') console.log(execution.text) // outputs 2 await sandbox.close()
E2B এর সাথে কীভাবে কাজ করবেন সে সম্পর্কে আরও জানতে, তাদের অফিসিয়াল ডকুমেন্টেশন দেখুন।
E2B সংগ্রহস্থলে তারকাচিহ্নিত করুন ⭐
স্কেলযোগ্য মাল্টি-এজেন্ট সহযোগিতামূলক সিস্টেমের জন্য সমাধান করা AI অ্যাপ্লিকেশন তৈরিতে অনেক সম্ভাবনা আনলক করতে পারে।
উট এর জন্য ভালো অবস্থানে রয়েছে। এটি একটি ওপেন-সোর্স ফ্রেমওয়ার্ক যা মাল্টি-এজেন্ট সিস্টেমের সমবায় আচরণ এবং ক্ষমতা অধ্যয়নের জন্য একটি মাপযোগ্য পদ্ধতির প্রস্তাব করে।
আপনি যদি একটি মাল্টি-এজেন্ট সিস্টেম তৈরি করতে চান, তাহলে ওপেন-সোর্স দৃশ্যে ক্যামেল সেরা পছন্দ হতে পারে।
pip
দিয়ে এটি ইনস্টল করে শুরু করুন।
pip install camel-ai
এখানে কিভাবে উট ব্যবহার করতে হয়.
from camel.messages import BaseMessage as bm from camel.agents import ChatAgent sys_msg = bm.make_assistant_message( role_name='stone', content='you are a curious stone wondering about the universe.') #define agent agent = ChatAgent( system_message=sys_msg, message_window_size=10, # [Optional] the length of chat memory ) # Define a user message usr_msg = bm.make_user_message( role_name='prof. Claude Shannon', content='what is information in your mind?') # Sending the message to the agent response = agent.step(usr_msg) # Check the response (just for illustrative purposes) print(response.msgs[0].content)
ভয়েলা, আপনার প্রথম এআই এজেন্ট আছে।
আরও তথ্যের জন্য, তাদের অফিসিয়াল ডকুমেন্টেশন পড়ুন।
ক্যামেল-এআই রিপোজিটরি স্টার করুন ⭐
আপনি যদি আপনার বিদ্যমান প্রতিক্রিয়া অ্যাপ্লিকেশনে AI ক্ষমতাগুলি অন্তর্ভুক্ত করতে চান তবে আর কিছু দেখবেন না। CopilotKit আপনাকে আপনার অ্যাপ্লিকেশনের সামনে এবং পিছনের প্রান্তের সাথে মিথস্ক্রিয়া স্বয়ংক্রিয় করতে GPT মডেলগুলি ব্যবহার করতে দেয়।
এটি একটি রেডিমেড কপিলট যা আপনি আপনার অ্যাপ্লিকেশনের সাথে একীভূত করতে পারেন বা আপনি অ্যাক্সেস করতে পারেন এমন কোনো কোড (OSS)।
এটি টেক্সট এরিয়া, পপআপ, সাইডবার এবং চ্যাটবট এর মত রিঅ্যাক্ট কম্পোনেন্ট অফার করে যাতে এআই ক্ষমতা সহ যেকোনও অ্যাপ্লিকেশন বাড়ানো যায়।
নিম্নলিখিত কমান্ড ব্যবহার করে CopilotKit দিয়ে শুরু করুন।
npm i @copilotkit/react-core @copilotkit/react-ui
একটি CopilotKit
অবশ্যই কপিলটকিটের সাথে ইন্টারঅ্যাক্ট করে এমন সমস্ত উপাদানকে আবৃত করতে হবে। আপনার CopilotSidebar
দিয়েও শুরু করা উচিত (পরে একটি ভিন্ন UI প্রদানকারীতে অদলবদল করা)।
"use client"; import { CopilotKit } from "@copilotkit/react-core"; import { CopilotSidebar } from "@copilotkit/react-ui"; import "@copilotkit/react-ui/styles.css"; export default function RootLayout({children}) { return ( <CopilotKit publicApiKey=" the API key or self-host (see below)"> <CopilotSidebar> {children} </CopilotSidebar> </CopilotKit> ); }
আপনি আরও তথ্যের জন্য তাদের ডকুমেন্টেশন পরীক্ষা করতে পারেন।
CopilotKit সংগ্রহস্থলে তারকাচিহ্নিত করুন ⭐
কল্পনা করুন যে একজন জুটি-প্রোগ্রামার আছে যিনি সর্বদা সহায়ক এবং কখনও বিরক্তিকর না। আচ্ছা, এখন তুমি কর!
Aider হল একটি AI-চালিত পেয়ার প্রোগ্রামার যেটি টার্মিনাল থেকে একটি প্রজেক্ট শুরু করতে, ফাইল এডিট করতে বা বিদ্যমান গিট রিপোজিটরির সাথে কাজ করতে পারে এবং আরও অনেক কিছু করতে পারে।
এটি GPT4o, Sonnet 3.5, DeepSeek Coder, Llama 70b, ইত্যাদির মতো নেতৃস্থানীয় LLM-এর সাথে কাজ করে।
আপনি এই মত দ্রুত শুরু করতে পারেন:
pip install aider-chat # Change directory into a git repo cd /to/your/git/repo # Work with Claude 3.5 Sonnet on your repo export ANTHROPIC_API_KEY=your-key-goes-here aider # Work with GPT-4o on your repo export OPENAI_API_KEY=your-key-goes-here aider
আরো বিস্তারিত জানার জন্য, ইনস্টলেশন নির্দেশাবলী এবং অন্যান্য ডকুমেন্টেশন দেখুন।
AI পাইপলাইন তৈরির জন্য প্রচুর ফ্রেমওয়ার্ক রয়েছে, কিন্তু আমি যদি আমার অ্যাপ্লিকেশনে প্রোডাকশন-রেডি এন্ড-টু-এন্ড সার্চ পাইপলাইনগুলিকে একীভূত করতে চাই, তাহলে হেস্ট্যাক আমার কাছে যেতে পারে।
এটি RAG, প্রশ্নোত্তর, বা শব্দার্থগত অনুসন্ধান হোক না কেন, হেস্ট্যাকের অত্যন্ত সংমিশ্রণযোগ্য পাইপলাইনগুলি উন্নয়ন, রক্ষণাবেক্ষণ এবং স্থাপনাকে একটি হাওয়ায় পরিণত করে৷
তাদের পরিষ্কার এবং মডুলার পদ্ধতিই তাদের আলাদা করে। হেস্ট্যাক আপনাকে অনায়াসে নতুন বা বিদ্যমান পাইপলাইনে র্যাঙ্কার, ভেক্টর স্টোর এবং পার্সারকে একীভূত করতে দেয়, আপনার প্রোটোটাইপগুলিকে উৎপাদন-প্রস্তুত সমাধানে পরিণত করা সহজ করে তোলে।
হেস্ট্যাক একটি পাইথন-কেবল ফ্রেমওয়ার্ক; আপনি এটি ব্যবহার করে ইনস্টল করতে পারেন। pip
pip install haystack-ai
এখন, হেস্ট্যাকের উপাদান দিয়ে আপনার প্রথম RAG পাইপলাইন তৈরি করুন।
import os from haystack import Pipeline, PredefinedPipeline import urllib.request os.environ["OPENAI_API_KEY"] = "Your OpenAI API Key" urllib.request.urlretrieve("https://www.gutenberg.org/cache/epub/7785/pg7785.txt", "davinci.txt") indexing_pipeline = Pipeline.from_template(PredefinedPipeline.INDEXING) indexing_pipeline.run(data={"sources": ["davinci.txt"]}) rag_pipeline = Pipeline.from_template(PredefinedPipeline.RAG) query = "How old was he when he died?" result = rag_pipeline.run(data={"prompt_builder": {"query":query}, "text_embedder": {"text": query}}) print(result["llm"]["replies"][0])
আরও টিউটোরিয়াল এবং ধারণার জন্য, তাদের ডকুমেন্টেশন দেখুন।
খড়খড় সংগ্রহস্থল স্টার করুন ⭐
ভেক্টর ডাটাবেস ছাড়া আধুনিক RAG অ্যাপ্লিকেশনগুলি অসম্পূর্ণ। এই নথিগুলি (টেক্সট, ছবি) এম্বেডিং হিসাবে সংরক্ষণ করে, যা ব্যবহারকারীদের শব্দার্থগতভাবে অনুরূপ নথি অনুসন্ধান করতে সক্ষম করে।
Pgvectorscale হল PgVector এর একটি এক্সটেনশন, PostgreSQL এর একটি ভেক্টর ডাটাবেস। এটি বিদ্যমান পোস্টগ্রেস ডাটাবেসের সাথে নির্বিঘ্নে সংহত করতে পারে।
আপনি যদি ভেক্টর স্টোরগুলির সাথে একটি অ্যাপ্লিকেশন তৈরি করেন তবে এটি একটি নো-ব্রেইনার। Pgvectorscale পিনেকোনের স্টোরেজ-অপ্টিমাইজ করা সূচক (s1) কে ছাড়িয়ে গেছে। এবং এটি 75% কম খরচ করে।
আপনি উত্স থেকে এটি ইনস্টল করতে পারেন, ইয়াম, হোমব্রু, অ্যাপটি ইত্যাদির মতো একটি প্যাকেজ ম্যানেজার ব্যবহার করতে পারেন বা একটি ডকার কন্টেইনার ব্যবহার করতে পারেন।
এটি দিয়ে শুরু করতে, কম্পাইল এবং ইনস্টল করুন।
# install prerequisites ## rust curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh ## pgrx cargo install --locked cargo-pgrx cargo pgrx init --pg16 pg_config #download, build and install pgvectorscale cd /tmp git clone --branch <version> https://github.com/timescale/pgvectorscale cd pgvectorscale/pgvectorscale cargo pgrx install --release
আপনার ডাটাবেসের সাথে সংযোগ করুন:
psql -d "postgres://<username>:<password>@<host>:<port>/<database-name>"
pgvectorscale এক্সটেনশন তৈরি করুন:
CREATE EXTENSION IF NOT EXISTS vectorscale CASCADE;
CASCADE
স্বয়ংক্রিয়ভাবে pgvector
ইনস্টল করে।
একটি এম্বেডিং কলাম সহ একটি টেবিল তৈরি করুন। উদাহরণ স্বরূপ:
CREATE TABLE IF NOT EXISTS document_embedding ( id BIGINT PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY, metadata JSONB, contents TEXT, embedding VECTOR(1536) )
এটি কীভাবে ব্যবহার করবেন সে সম্পর্কে আরও তথ্যের জন্য, সংগ্রহস্থলটি দেখুন।
Pgvectorscale সংগ্রহস্থলে তারকাচিহ্নিত করুন ⭐
এলএলএমগুলি ব্যয়বহুল।
আপনি যদি এমন একটি অ্যাপ তৈরি করেন যার জন্য চ্যাট মডেলগুলির সাথে আরও বর্ধিত কথোপকথনের প্রয়োজন হয় এবং ক্রেডিট কার্ডগুলি সর্বাধিক করতে না চান তবে আপনার ক্যাশিং প্রয়োজন৷
যাইহোক, ঐতিহ্যগত ক্যাশিং এখানে কোন কাজে আসে না। এখানেই GPTCache ছবির মধ্যে আসে।
এটি মিলভাস ভেক্টর স্টোরের মূল সংস্থা জিলিজের একটি শব্দার্থিক ক্যাশিং টুল।
এটি আপনাকে আপনার পছন্দের ভেক্টর স্টোরগুলিতে কথোপকথন সংরক্ষণ করতে দেয়। এলএলএম-এ একটি প্রশ্ন পাঠানোর আগে, এটি ভেক্টর স্টোর অনুসন্ধান করে; যদি একটি আঘাত আছে, এটি এটি আনয়ন. অন্যথায়, এটি মডেলের অনুরোধকে রুট করে।
আরও তথ্যের জন্য, অফিসিয়াল ডকুমেন্টেশন পৃষ্ঠা দেখুন।
GPTCache সংগ্রহস্থলে তারকাচিহ্নিত করুন ⭐
Mem0 বড় ভাষার মডেলগুলির জন্য একটি স্মার্ট, স্ব-উন্নত মেমরি স্তর সরবরাহ করে।
এটি আপনাকে ব্যবহারকারী, এজেন্ট এবং সেশনের জন্য স্থায়ী মেমরি যোগ করতে দেয়। আপনি যদি কাস্টম ডেটাতে একটি চ্যাটবট বা প্রশ্নোত্তর সিস্টেম তৈরি করেন তবে Mem0 বিবেচনা করুন।
Mem0 ব্যবহার করে শুরু করুন। pip
pip install mem0ai
বড় ভাষার মডেলগুলিতে মেমরি স্তর যুক্ত করতে Mem0 কীভাবে ব্যবহার করবেন তা এখানে।
from mem0 import Memory # Initialize Mem0 m = Memory() # Store a memory from any unstructured text result = m.add("I am working on improving my tennis skills. Suggest some online courses.", user_id="Alice", metadata={"category": "hobbies"}) print(result) # Created memory: Improving her tennis skills. Looking for online suggestions. # Retrieve memories all_memories = m.get_all() print(all_memories) # Search memories related_memories = m.search(query="What are Alice's hobbies?", user_id="alice") print(related_memories) # Update a memory result = m.update(memory_id="m1", data="Likes to play tennis on weekends") print(result) # Get memory history history = m.history(memory_id="m1") print(history)
আরো জন্য অফিসিয়াল ডকুমেন্টেশন পড়ুন.
Mem0 ( Embedchain) সংগ্রহস্থল স্টার করুন ⭐
সফ্টওয়্যার ডেভেলপমেন্টে সঞ্চালনের গতি সর্বাপেক্ষা গুরুত্বপূর্ণ এবং একটি এআই অ্যাপ্লিকেশন তৈরি করার সময় এটি আরও গুরুত্বপূর্ণ।
সাধারণত, এম্বেডিং জেনারেশন অনেক সময় নিতে পারে, পুরো পাইপলাইনকে ধীর করে দেয়। যাইহোক, এই ক্ষেত্রে উচিত নয়.
Qdrant থেকে FastEmbed হল একটি দ্রুত, লাইটওয়েট পাইথন লাইব্রেরি যা এম্বেড করার জন্য তৈরি করা হয়েছে।
এটি Pytorch এর পরিবর্তে ONNX রানটাইম ব্যবহার করে, এটি দ্রুততর করে। এটি বেশিরভাগ অত্যাধুনিক ওপেন সোর্স এমবেডিং মডেলকে সমর্থন করে।
FastEmbed দিয়ে শুরু করতে, pip
ব্যবহার করে এটি ইনস্টল করুন।
pip install fastembed # or with GPU support pip install fastembed-gpu
এখানে আপনি কিভাবে নথির এমবেডিং তৈরি করতে পারেন।
from fastembed import TextEmbedding from typing import List # Example list of documents documents: List[str] = [ "This is built to be faster and lighter than other embedding libraries, eg Transformers, Sentence-Transformers, etc.", "FastEmbed is supported by and maintained by Quadrant." ] # This will trigger the model download and initialization embedding_model = TextEmbedding() print("The model BAAI/bge-small-en-v1.5 is ready to use.") embeddings_generator = embedding_model.embed(documents) # reminder this is a generator embeddings_list = list(embedding_model.embed(documents)) # You can also convert the generator to a list, and that to a Numpy array len(embeddings_list[0]) # Vector of 384 dimensions
আরো তথ্যের জন্য তাদের সংগ্রহস্থল দেখুন.
FastEmbed রিপোজিটরি স্টার করুন ⭐
আপনি যদি LLM আউটপুটগুলির সাথে খেলে থাকেন তবে আপনি জানেন যে এটি কাঠামোগত প্রতিক্রিয়া যাচাই করা চ্যালেঞ্জিং হতে পারে।
প্রশিক্ষক হল একটি ওপেন-সোর্স টুল যা LLM আউটপুটগুলির বৈধতা, পুনরায় চেষ্টা এবং স্ট্রিমিংকে স্ট্রীমলাইন করে।
এটি ডেটা যাচাইকরণের জন্য পাইথনের জন্য Pydantic এবং JS/TS-এর জন্য Zod ব্যবহার করে এবং openAI এর বাইরে বিভিন্ন মডেল প্রদানকারীকে সমর্থন করে।
নিম্নলিখিত কমান্ডটি ব্যবহার করে প্রশিক্ষকের সাথে শুরু করুন।
npm i @instructor-ai/instructor zod openai
এখন, এখানে আপনি কীভাবে LLM প্রতিক্রিয়াগুলি থেকে কাঠামোগত ডেটা বের করতে পারেন।
import Instructor from "@instructor-ai/instructor"; import OpenAI from "openai" import { z } from "zod" const oai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY ?? undefined, organization: process.env.OPENAI_ORG_ID ?? undefined }) const client = Instructor({ client: oai, mode: "TOOLS" }) const UserSchema = z.object({ // Description will be used in the prompt age: z.number().describe("The age of the user"), name: z.string() }) // User will be of type z.infer<typeof UserSchema> const user = await client.chat.completions.create({ messages: [{ role: "user", content: "Jason Liu is 30 years old" }], model: "gpt-3.5-turbo", response_model: { schema: UserSchema, name: "User" } }) console.log(user) // { age: 30, name: "Jason Liu" }
আরও তথ্যের জন্য, অফিসিয়াল ডকুমেন্টেশন পৃষ্ঠা দেখুন।
আসুন সৎ হই; আমরা সকলেই কিছু সময়ে চিৎকার করেছি কারণ একটি নতুন মডেল প্রদানকারী পাঠ্য, চিত্র বা এমবেডিং জেনারেশনের জন্য OpenAI SDK ফর্ম্যাট অনুসরণ করে না।
যাইহোক, LiteLLM-এর সাথে, একই বাস্তবায়ন বিন্যাস ব্যবহার করে, আপনি OpenAI মডেলগুলির জন্য ড্রপ-ইন প্রতিস্থাপন হিসাবে যে কোনও মডেল প্রদানকারী (Claude, Gemini, Groq, Mistral, Azure AI, Bedrock, ইত্যাদি) ব্যবহার করতে পারেন।
তারা 100+ LLM জুড়ে লোড-ব্যালেন্সিং, ফলব্যাক এবং খরচ ট্র্যাকিং সমর্থন করে।
pip
ব্যবহার করে LiteLLM ইনস্টল করুন।
pip install litellm
এখানে আপনি GPT মডেলের জন্য ড্রপ-ইন প্রতিস্থাপন হিসাবে Claude-2 মডেল ব্যবহার করতে পারেন।
from litellm import completion import os # LiteLLM with OpenAI Models os.environ["OPENAI_API_KEY"] = "your-API-key" response = completion( model="gpt-3.5-turbo", messages=[{ "content": "Hello, how are you?","role": "user"}] ) # LiteLLM with Claude Models os.environ["ANTHROPIC_API_KEY"] = "your-API-key" response = completion( model="claude-2", messages=[{ "content": "Hello, how are you?","role": "user"}] )
আরও জানতে, তাদের অফিসিয়াল ডকুমেন্টেশন পড়ুন।
আপনি কি অন্য কোন দুর্দান্ত টুল বা ফ্রেমওয়ার্ক ব্যবহার করেন বা তৈরি করেছেন?
আমাকে মন্তব্যে তাদের সম্পর্কে জানতে দিন :)