অফলাইন এবং গোপনীয়তা
iRoof.top আপনার চ্যাট আপনার কম্পিউটারে রাখে। যদি মডেলটিও আপনার কম্পিউটারে চলে, তাহলে কিছুই কম্পিউটার ছেড়ে বের হওয়ার প্রয়োজন নেই। অফলাইন মোড এটিকে অভ্যাস নয়, অ্যাপের বাধ্যতামূলক নিয়মে পরিণত করে।
স্থানীয়ভাবে কী ঘটে
| ধাপ | কোথায় চলে | নেটওয়ার্ক |
|---|---|---|
| ইমপোর্ট, পার্সিং, স্টাইল প্রোফাইল | আপনার কম্পিউটার | নেই |
| সংরক্ষণ | ডেটা ফোল্ডারে JSON ফাইল ও মিডিয়া | নেই |
| ইতিহাসে খোঁজ, শেয়ার লিংকের PIN, মিডিয়া লাইব্রেরি | আপনার কম্পিউটার | নেই |
| ছবি, স্টিকার, GIF, ভিডিওর বর্ণনা | মিডিয়া মডেল, শুধু যখন আপনি AI দিয়ে বর্ণনা করুন চাপেন | প্রতিটি আইটেমের জন্য মডেল এন্ডপয়েন্টে একটি অনুরোধ |
| ভয়েসের ট্রান্সক্রিপশন | মিডিয়া মডেল, যখন আপনি ভয়েস বার্তায় AI দিয়ে বর্ণনা করুন চাপেন বা একটি রেকর্ড করেন | মডেল এন্ডপয়েন্টে একটি অনুরোধ |
| একটি উত্তর | চ্যাট মডেল, যখন আপনি বার্তা পাঠান (বা একজন ভিজিটর পাঠান) | মডেল এন্ডপয়েন্টে অনুরোধ |
| দীর্ঘ ইতিহাসের সংক্ষেপণ | চ্যাট মডেল, উত্তরের অংশ হিসেবে, যখন ইতিহাস বাজেট ছাড়িয়ে যায় | মডেল এন্ডপয়েন্টে একটি অতিরিক্ত অনুরোধ |
ইমপোর্ট কখনো মডেল ডাকে না। প্রথম কল ঘটে যখন আপনি বার্তা পাঠান, বর্ণনা চাপেন, বা একটি ভয়েস বার্তা রেকর্ড করেন। একটি উত্তর মডেলকে আপনার এক্সপোর্ট করা ইতিহাস (ইতিহাস বাজেট পর্যন্ত), স্টাইল প্রোফাইল, এবং মিডিয়ার বর্ণনা পাঠায়। তাই মডেল কোথায় চলে তা ঠিক করে আপনার চ্যাট কোথায় যাবে: একটি ক্লাউড এন্ডপয়েন্ট সেটি পায়, আপনার কম্পিউটারের মডেল পায় না।
শুধু অফলাইনে চালানো
- Ollama বা LM Studio ইনস্টল করুন, অথবা llama.cpp-এর
llama-serverচালান। - টুল কলিং সমর্থন করে এমন একটি চ্যাট মডেল ডাউনলোড করুন, এবং ছবি ও স্টিকারের বর্ণনা চাইলে একটি ভিশন মডেল।
- সেটিংস-এ এন্ডপয়েন্ট ও মডেল বেছে নিন, তারপর অফলাইন চালু করুন:
| সার্ভার | বেস URL |
|---|---|
| Ollama | http://localhost:11434/v1 |
| LM Studio | http://localhost:1234/v1 |
llama.cpp llama-server | http://localhost:8081/v1 (এর ডিফল্ট পোর্ট 8080 iRoof.top-এর; llama-server --port 8081 দিয়ে চালান) |
- পরীক্ষা চাপুন। এটি একটি ছোট অনুরোধ পাঠায় এবং যে মডেল ও হোস্ট সাড়া দিল তা দেখায়। আপনি নেটওয়ার্ক বন্ধ করে চ্যাট চালিয়ে যেতে পারেন।
ডেস্কটপ অ্যাপ সেটিংস-এ কনফিগার হয়। এটি আপনার শেল বা .env ফাইল পড়ে না (ডেস্কটপ অ্যাপ দেখুন), কিন্তু যে পরিবেশে এটি শুরু হয়েছে সেখানে ROOFTOP_OFFLINE ও OPENAI_* থাকলে সেগুলো মেনে চলে। একটি সার্ভার পরিবেশ (এবং .env) পড়ে:
# --offline মানে ROOFTOP_OFFLINE=1
OPENAI_BASE_URL=http://localhost:11434/v1 OPENAI_MODEL=llama3.1 rooftop --offlinedocker run -p 8080:8080 -v rooftop-data:/data \
--add-host=host.docker.internal:host-gateway \
-e ROOFTOP_OFFLINE=1 \
-e OPENAI_BASE_URL=http://host.docker.internal:11434/v1 -e OPENAI_MODEL=llama3.1 \
ghcr.io/irooftop/rooftopDocker-এ localhost কন্টেইনার নিজেই, তাই host.docker.internal ব্যবহার করুন (--add-host বিকল্পটি শুধু Linux-এ লাগে)। যদি Ollama সংযোগ প্রত্যাখ্যান করে, তাকে সব ইন্টারফেসে শুনতে দিন (OLLAMA_HOST=0.0.0.0)।
অফলাইন মোড যা বাধ্যতামূলক করে
| অফলাইন মোড | |
|---|---|
| চ্যাট, ইতিহাসের সারাংশ, মিডিয়ার বর্ণনা, ভয়েসের ট্রান্সক্রিপশন | এন্ডপয়েন্ট স্থানীয় না হলে প্রত্যাখ্যাত |
| HTTP-এর মাধ্যমে MCP সার্ভার | স্থানীয় না হলে প্রত্যাখ্যাত; সেটিংস-এ ত্রুটি হিসেবে দেখায় |
ইন্টারনেটে শেয়ার (<নাম>.iroof.top) | বন্ধ: রিলে ক্লায়েন্ট শুরু হয় না এবং সুইচ লক থাকে |
| Telegram বট, নিজের বা শেয়ার করা | শুরু হয় না |
| URL-এর মাধ্যমে GIF | AI স্থানীয় নয় এমন URL থেকে GIF পাঠাতে পারে না |
| Wi‑Fi শেয়ার লিংক | কাজ করে |
একটি প্রত্যাখ্যাত অনুরোধ কোনো সংযোগ তৈরির আগেই ব্যর্থ হয়, এবং বার্তা কারণ বলে: অফলাইন মোড: https://openrouter.ai একটি স্থানীয় এন্ডপয়েন্ট নয়। স্থানীয় এন্ডপয়েন্ট থেকে অন্য হোস্টে পুনর্নির্দেশও প্রত্যাখ্যাত হয়। মোড চালু থাকাকালীন সাইডবারের হেডারে একটি ছোট অফলাইন ব্যাজ দেখা যায়। সেটিং সংরক্ষিত হয়। --offline / ROOFTOP_OFFLINE=1 সেটিংস নির্বিশেষে মোড চালু করে, এবং সেটিংস তা বন্ধ করতে পারে না।
"স্থানীয়" মানে
localhost, লুপব্যাক (127.0.0.0/8, ::1), ব্যক্তিগত নেটওয়ার্ক ঠিকানা (10/8, 172.16/12, 192.168/16, fc00::/7), লিংক-লোকাল ঠিকানা, এবং *.local ও *.internal নাম (যেমন host.docker.internal)। আপনার বাড়ির নেটওয়ার্কের অন্য কম্পিউটারে থাকা একটি মডেল স্থানীয় হিসেবে গণ্য হয়, কারণ এটি কখনো আপনার নেটওয়ার্ক ছাড়ে না। নামগুলো লেখার ধরন থেকে বিচার করা হয়, খোঁজা হয় না।
অফলাইন মোড যা যাচাই করতে পারে না
- stdio MCP সার্ভার আপনার কম্পিউটারের প্রোগ্রাম। iRoof.top এগুলো চালু করে, কিন্তু এগুলো কোথায় সংযোগ করে তা দেখতে পায় না, তাই শুধু সেগুলোই যোগ করুন যেগুলো স্থানীয় থাকবে বলে আপনি বিশ্বাস করেন।
- ভয়েসের ট্রান্সক্রিপশন Whisper-এর
/audio/transcriptionsAPI-এর পরিবর্তে চ্যাট API (একটিinput_audioঅংশ) ব্যবহার করে। এর জন্য একটি স্থানীয় সার্ভার ও মডেল লাগে যা সেখানে অডিও গ্রহণ করে। আপনারটি না করলে ভয়েস বার্তা তবু সংরক্ষিত ও পাঠানো হয়; শুধু এর টেক্সট থাকে না। - ছবি ও ভয়েস তৈরি শুধু MCP টুল হিসেবে আছে। অফলাইনে এর জন্য একটি স্থানীয় MCP সার্ভার ব্যবহার করুন।
- যাদের সাথে আপনি শেয়ার করেন তারা নিজেদের ব্রাউজারে আপনার Wi‑Fi লিংক খোলে। অফলাইন মোড এই অ্যাপ নিয়ন্ত্রণ করে, তাদের ডিভাইস নয়।
বন্ধুদের সাথে নিরাপদে শেয়ার করা
| লিংক | কী ঘটে |
|---|---|
Wi‑Fi http://<আপনার IP>:8737/s/<নাম> | কখনো আপনার স্থানীয় নেটওয়ার্ক ছাড়ে না |
ইন্টারনেট https://<নাম>.iroof.top/s/<নাম> | অ্যাপ হাবের সাথে একটি আউটগোয়িং WebSocket সংযোগ খোলে, যার মাধ্যমে হাব ভিজিটরের HTTP অনুরোধ ও আপনার অ্যাপের উত্তর ফরওয়ার্ড করে |
ইন্টারনেট লিংকে আপনার এক্সপোর্ট, চ্যাট ও মডেল আপনার কম্পিউটারে থাকে, এবং হাব এর কোনোটিই সংরক্ষণ করে না। হাব শুধু একটি অ্যাকাউন্ট রেকর্ড রাখে: আপনার নাম, আপনার গোপনীয়তার একটি হ্যাশ, এবং শেষবার কখন আপনাকে দেখেছিল।
এটি যা দেয় না সে সম্পর্কে স্পষ্ট থাকুন। হাব TLS শেষ করে, তাই যেকোনো রিভার্স প্রক্সির মতো, প্রযুক্তিগতভাবে এর মধ্য দিয়ে যাওয়া ট্রাফিক সে দেখতে পারে: ভিজিটর যা টাইপ করে, পার্সোনার উত্তর, এবং লিংক ভিজিটরদের যে ইতিহাস পড়তে দেয় (ভিজিটররা এক্সপোর্ট পড়তে পারে, ডিফল্ট কিছুই না)। এটি শুধু ভিজিটর পেজ (/s/…, /api/s/…, পেজের সম্পদ) ফরওয়ার্ড করে এবং উভয় দিকের কুকি বাদ দেয়; আপনার মালিকের ইন্টারফেস ও সেটিংস এর মাধ্যমে কখনো পাওয়া যায় না। এত বিশ্বাসও যদি বেশি মনে হয়, তাহলে Wi‑Fi লিংক ব্যবহার করুন, অথবা নিজের রিলে হাব চালান। শেয়ার লিংক সম্পর্কে আরও।
অফলাইন মোড-এ iroof.top রিলে বন্ধ থাকে। Wi‑Fi লিংক কাজ করতে থাকে।
Telegram বট
Telegram থেকে উত্তর দিন আপনার গ্রুপে পোস্ট করে:
- নতুন ভিজিটর বার্তা (নাম, লিংকের নাম, টেক্সট, বা বর্ণনা বা ট্রান্সক্রিপ্টসহ মিডিয়া লেবেল, এবং তারা যে বার্তার উত্তর দিচ্ছে তার একটি ছোট প্রিভিউ) এবং AI-এর উত্তর;
- কখনো এক্সপোর্ট করা ইতিহাস নয়। পুরোনো বার্তা পাঠানো হয় না।
বটের এন্ড-টু-এন্ড এনক্রিপশন নেই: টেক্সট Telegram দিয়ে সাধারণ আকারে যায়। শেয়ার করা বট-এর সাথে এটি হাবের মধ্য দিয়েও যায়, যা শুধু রাখে কোন গ্রুপ কোন অ্যাকাউন্টের। নিজের বট হাব ছাড়াই সরাসরি Telegram-এর সাথে কথা বলে। অফলাইন মোড দুটিই বন্ধ করে।
আপনার ডেটা কোথায় যায়
| ডেটা | কোথায় যায় |
|---|---|
| এক্সপোর্ট, চ্যাট, সেটিংস, API কী | আপনার কম্পিউটারের ডেটা ফোল্ডার |
| ইমপোর্ট ও স্টাইল প্রোফাইল | কোথাও না |
| ইতিহাস, স্টাইল প্রোফাইল, আপনার বার্তা | আপনার বেছে নেওয়া মডেল এন্ডপয়েন্টে, প্রতিটি উত্তরে |
| ছবি ও ভয়েস | মিডিয়া মডেল এন্ডপয়েন্টে, বর্ণনা করলে বা ভয়েস বার্তা রেকর্ড করলে |
| Wi‑Fi লিংকে ভিজিটর বার্তা | আপনার কম্পিউটার ও আপনার মডেল এন্ডপয়েন্ট |
| ইন্টারনেট লিংকে ভিজিটর বার্তা | হাব (পথে), আপনার কম্পিউটার, আপনার মডেল এন্ডপয়েন্ট |
| Telegram-এর মাধ্যমে ভিজিটর বার্তা | অতিরিক্তভাবে Telegram, এবং শেয়ার করা বটের জন্য হাব |
| অফলাইন মোড | শুধু স্থানীয় মডেল এন্ডপয়েন্ট, শুধু Wi‑Fi লিংক, Telegram নেই |