Whizi চ্যাট ইম্পোর্ট এরর: কেন একটা ChatGPT বা Claude ইম্পোর্ট প্রত্যাখ্যাত হয়

দ্রুত উত্তর

একটা Whizi ইম্পোর্ট দুই জায়গার একটায় ব্যর্থ হয়, আর মেসেজ বলে দেয় কোনটায়: আপনার এক্সপোর্ট ফাইল পড়া ব্রাউজার পার্সার, নাকি সার্ভারে কথোপকথন পোস্ট করা আপলোড। Whizi যে ফাইল পড়ে সেটা হলো একটা ChatGPT বা Claude এক্সপোর্টের ভেতরের conversations.json। একটা ইম্পোর্ট আবার চালালে কখনো চ্যাট ডুপ্লিকেট হয় না, তাই আগে রিট্রাই করুন।

সংক্ষিপ্ত উত্তর

যদি Whizi আপনার ইম্পোর্ট প্রত্যাখ্যান করে, প্রথমে আপনি যে ফাইলটা বেছেছেন সেটা দেখুন: Whizi কেবল একটা ChatGPT বা Claude এক্সপোর্টের ভেতরের conversations.json ফাইলটাই পড়ে, তাই zip নিজেই না বেছে এক্সপোর্টটা আনজিপ করে সেই ফাইলটা বেছে নিন। এরপর, একটা ইম্পোর্ট দুই জায়গার একটায় ব্যর্থ হয় আর মেসেজের ভাষা বলে দেয় কোনটায়: আপনার এক্সপোর্ট ফাইল পড়া ব্রাউজার পার্সার, নাকি পার্সারের তৈরি করা কথোপকথন গ্রহণ করা ইম্পোর্ট এন্ডপয়েন্ট। ফাইল এরর আপনার বেছে নেওয়া ফাইল নিয়ে। আপলোড এরর নেটওয়ার্ক বা সেশন নিয়ে। মাঝখানে কিছুই অস্পষ্ট নয়, কারণ প্রতিটা মেসেজ একটা নির্দিষ্ট শর্তের সাথে বাঁধা একটা স্থির স্ট্রিং।

কিছু রিট্রাই করার আগে জানার দ্বিতীয় বিষয়টা হলো: একটা ইম্পোর্ট আবার চালালে কখনো চ্যাট ডুপ্লিকেট হয় না। প্রতিটা ইম্পোর্ট করা কথোপকথন অ্যাকাউন্ট, সোর্স, আর সোর্স আইডি দিয়ে কী করা থাকে, তাই একই এক্সপোর্ট দুইবার ইম্পোর্ট করা, একটা কাটা কানেকশনের পর আবার শুরু করা, বা Import দুইবার ক্লিক করা, সবকিছুই একই চ্যাট একবারই বসায়।

আপনি যা দেখলেনকোথায় ব্যর্থ হলোকী করবেন
এক্সপোর্ট ফরম্যাট বা conversations.json নিয়ে একটা মেসেজআপনার ফাইল পড়া হচ্ছে, কিছু আপলোড হওয়ার আগেইএক্সপোর্ট থেকে একটা ভিন্ন ফাইল বেছে নিন, নিচের টেবিল দেখুন
আপনার সেশন বা কানেকশন নিয়ে একটা মেসেজআপলোড হচ্ছে, মাঝপথেআবার সাইন ইন করুন বা রিকানেক্ট করুন, তারপর ইম্পোর্ট আবার চালান
ইম্পোর্ট করা যায়নি এমন কথোপকথনের একটা সংখ্যাকিছু ব্যাচ প্রতিটা রিট্রাইতে ব্যর্থ হয়েছেইম্পোর্ট আবার চালান, এটা শুধু যা বাকি আছে তা তুলে নেয়
কিছুই না, কিন্তু অনেকক্ষণ ধরে চলছেরেট লিমিটিং, যেভাবে ডিজাইন করা হয়েছে সেভাবেইঅপেক্ষা করুন, ইম্পোর্টার নিজে থেকেই আবার চেষ্টা করে

আপনার এক্সপোর্ট ফাইল পড়া থেকে আসা এরর

এগুলো আসে ব্রাউজার থেকে, আপনার মেশিন থেকে একটা বাইটও বেরোনোর আগে। এক্সপোর্ট ফাইলটা নিজে কখনো আপলোড হয় না: ব্রাউজার সেটা পার্স করে আর শুধু নরমালাইজড কথোপকথন পোস্ট করে, তাই এখানে একটা এরর মানে ফাইলটা পাঠানোর মতো যথেষ্ট দূর পর্যন্ত যায়নি।

মেসেজট্রিগারসমাধান
That file is not a ChatGPT or Claude export. Look for conversations.json inside the export zip.পার্সার কোনো এক্সপোর্ট ফরম্যাটই শনাক্ত করতে পারছে না, অথবা একটা zip একটা অচেনা পেলোড দিচ্ছেএক্সপোর্ট আর্কাইভটা খুলুন আর নির্দিষ্ট করে conversations.json বেছে নিন
There is no conversations.json inside that zip. Unzip it and pick the file directly.আপনার বেছে নেওয়া zip-এ মিলে যাওয়া কোনো এন্ট্রি নেইনিজেই আনজিপ করুন, conversations.json খুঁজে বের করুন, আর সেই ফাইলটা বেছে নিন
That file is not valid JSON, so there was nothing to read.বেছে নেওয়া ফাইলটা JSON হিসেবে পার্স হতে ব্যর্থ হচ্ছেChatGPT বা Claude থেকে এক্সপোর্টটা আবার ডাউনলোড করুন আর তা থেকে conversations.json বেছে নিন
That export has no conversations with text in them.এক্সপোর্টটা পার্স হয় কিন্তু শূন্য কথোপকথন দেয়এক্সপোর্টটা সত্যিই টেক্সট ট্রান্সক্রিপ্ট থেকে খালি। Whizi-র দিক থেকে ঠিক করার কিছু নেই
That file is too large for the browser to open. Pick the export .zip instead, which is read one file at a time.বেছে নেওয়া কাঁচা .json ফাইলটা ব্রাউজারের রিড ক্যাপের ওপরেবদলে .zip-টা বেছে নিন। একটা কাঁচা .json এক্সপোর্ট 300 MB পর্যন্ত গ্রহণযোগ্য; .zip পথের নিজস্ব কোনো সিলিং নেই, কারণ শুধু conversations.json এন্ট্রিটাই ডিকম্প্রেস করা হয়
Could not read that file. Please try again.ফাইল পড়া অন্য যেকোনো কারণে ব্যর্থ হয়েছেসত্যিকারের একটা রিট্রাই কেস। একই ফাইলে বারবার হলে, এক্সপোর্ট .zip-টা বেছে নিন, যেটা একবারে একটা এন্ট্রি করে পড়া হয়

প্রথম মেসেজটা ব্যাপক একটা, কারণ একটা স্ট্রিং দুইটা শর্ত কভার করে: একটা এক্সপোর্ট ফরম্যাট যা পার্সার শনাক্ত করতে পারে না, আর একটা zip যা একটা অচেনা পেলোড দেয়। দুটোই একই সমাধানে গিয়ে পড়ে, যা হলো এক্সপোর্টটা আনজিপ করে সরাসরি conversations.json বেছে নেওয়া।

আপলোড থেকে আসা এরর

ফাইলটা পার্স হয়ে গেলে, ইম্পোর্টার ব্যাচে কথোপকথনগুলো পোস্ট করে। এই ধাপে দুইটা জিনিস ভুল হতে পারে, আর দুটোই সারিয়ে নেওয়া যায়।

মেসেজট্রিগারসমাধান
Your session ended. Sign in again, then start the import.ইম্পোর্ট চলাকালীন মাঝপথে টোকেন ফেচ কিছুই ফেরত দেয়নিআবার সাইন ইন করুন, তারপর ইম্পোর্টটা নতুন করে শুরু করুন। যা ইতিমধ্যে বসে গেছে তা থেকেই যায়, আর পুনরায় চালানো সেটা এড়িয়ে যায়
The import could not be finished. Check your connection and try again.ইম্পোর্ট চলাকালীন অন্য যেকোনো আপলোড ব্যর্থতাকানেকশনটা পরীক্ষা করুন আর আবার চালান

তৃতীয় একটা ফলাফল আসলে কোনো এরর-ই না বরং একটা সারাংশ: {count} could not be imported. Run the import again to pick them up. এটা সেই কথোপকথনগুলোর সংখ্যা যাদের ব্যাচ প্রতিটা রিট্রাইতে ব্যর্থ হয়েছে। মেসেজের নির্দেশটাই পুরো সমাধান, আর সংক্ষিপ্ত উত্তরে বর্ণনা করা ডিডুপ কি-টাই কারণ যে দ্বিতীয় রানে আপনার কোনো খরচ হয় না।

ইম্পোর্ট এন্ডপয়েন্ট যে এরর ফেরত দেয়

এগুলো হলো সেই কোড আর স্ট্রিং যা ইম্পোর্ট রুট নিজেই তৈরি করে। ওয়েবসাইট একই ক্যাপগুলো প্রতিফলিত করে আর পোস্ট করার আগে যাচাই করে, তাই এগুলো সবচেয়ে বেশি গুরুত্বপূর্ণ হয় যখন কিছু সরাসরি এন্ডপয়েন্টে পোস্ট করছে বা যখন একটা ব্যাচ ত্রুটিপূর্ণ।

কোডমেসেজট্রিগার
invalid_importA JSON object body is required.ইম্পোর্ট বডিটা একটা অবজেক্ট নয়
invalid_sourceAn import source of chatgpt or claude is required.সোর্স ফিল্ডটা অনুপস্থিত বা গ্রহণযোগ্য দুইটা সোর্সের একটাও না
empty_importAt least one conversation is required.কথোপকথনের অ্যারেটা অনুপস্থিত বা খালি
too_many_conversationsThis batch has {count} conversations, over the 25 per request limit.এক রিকোয়েস্টে 25টার বেশি কথোপকথন
too_many_messagesConversation {n} carries {count} messages, over the 400 per request limit. Send the rest as an append.এক রিকোয়েস্টে এক কথোপকথনে 400টার বেশি মেসেজ
invalid_importConversation {n} is not an object.কথোপকথনের অ্যারের একটা এন্ট্রি অবজেক্ট নয়
invalid_importConversation {n} has no messages array.একটা কথোপকথনে মেসেজের কোনো অ্যারে নেই
invalid_importConversation {n} has an invalid append target.appendTo ফিল্ডটা স্ট্রিং বা null কোনোটাই না
invalid_messageConversation {n} message {m} is not an object.একটা মেসেজ এন্ট্রি অবজেক্ট নয়
invalid_messageConversation {n} message {m} needs a role of "user" or "assistant".একটা মেসেজের role সেই দুইটার বাইরে
invalid_messageConversation {n} message {m} has no text.মেসেজ কন্টেন্টটা স্ট্রিং নয়
request_too_largeRequest is too large.JSON বডিটা রুটের বাইট ক্যাপ ছাড়িয়ে যায়, ঘোষিত Content-Length দিয়ে বা প্রকৃতপক্ষে পড়া বাইট দিয়ে

এই মেসেজগুলোর পেছনের ক্যাপগুলো: রিকোয়েস্ট প্রতি 25টা কথোপকথন, রিকোয়েস্ট প্রতি কথোপকথন প্রতি 400টা মেসেজ, আর একটা রিকোয়েস্ট বডি সর্বোচ্চ 2,000,000 বাইট। ওয়েবসাইট ইম্পোর্টার ঠিক 25 আর 400-এ ভাগ করে আর প্রতিটা রিকোয়েস্ট 1,200,000 বাইটের নিচে রাখে, ইচ্ছাকৃতভাবে 2,000,000 বাইট ক্যাপের নিচে যাতে রিকোয়েস্ট এনভেলপের জন্য জায়গা থাকে। 400টার বেশি মেসেজওয়ালা একটা কথোপকথন প্রত্যাখ্যাত হয় না, বরং কেটে ফেলা হয়: বাকি অংশটা প্রথম স্লাইসের তৈরি করা চ্যাটের ওপর অ্যাপেন্ড স্লাইস হিসেবে পাঠানো হয়।

একটা বড় ইম্পোর্ট একবারে 20 সেকেন্ডের জন্য থামে

কথোপকথন ইম্পোর্ট করা প্রতি ইউজারে প্রতি মিনিটে 20টা রিকোয়েস্টে রেট লিমিটেড। একটা বড় এক্সপোর্ট সেই সীমায় পৌঁছাবে, আর এটা প্রত্যাশিত, নষ্ট নয়।

এটা ঘটলে আপনি কোনো এরর দেখবেন না। HTTP 429-এ পড়া একটা ইম্পোর্ট দেখানো হয় না: ক্লায়েন্ট 20 সেকেন্ড অপেক্ষা করে আর আবার চেষ্টা করে, প্রতি ব্যাচে সর্বোচ্চ 4 বার পর্যন্ত। তাই একটা বড় এক্সপোর্টে একবারে বিশ সেকেন্ডের জন্য থমকে যাওয়ার মতো দেখানো একটা ইম্পোর্ট ঠিক যা করার কথা তাই করছে। এটা চলতে দিন।

সেই 4 বার চেষ্টার পরও যদি ব্যাচগুলো ব্যর্থ হয়, সেগুলো {count} could not be imported. Run the import again to pick them up. সারাংশে গিয়ে পড়ে, আর সাপোর্টের বদলে ইম্পোর্টটা দ্বিতীয়বার চালানোই সমাধান।

ইম্পোর্ট ইচ্ছাকৃতভাবে যা বাদ দেয়

কিছু কন্টেন্ট ডিজাইন অনুযায়ী বাদ দেওয়া হয়, আর একটা সফল ইম্পোর্টও মূলটার পাশে অসম্পূর্ণ দেখাতে পারে।

একটা ChatGPT এক্সপোর্টের ক্ষেত্রে, স্ক্রিনে যে ব্রাঞ্চটা ছিল শুধু সেটাই ইম্পোর্ট হয়। রিজেনারেট করা রিপ্লাই আর বাতিল করা ড্রাফট মেসেজ হিসেবে আবার চালানো হয় না। ট্রান্সক্রিপ্ট নয় এমন কন্টেন্টও বাদ যায়: লুকানো রিজনিং, অ্যানালাইসিস-টুল কোড আর আউটপুট, ব্রাউজিং স্ক্র্যাচপ্যাড, কাস্টম-ইনস্ট্রাকশন ব্লক, আর ফাংশন কল।

একটা Claude এক্সপোর্টের ক্ষেত্রে, থিংকিং ব্লক, টুল কল, আর অ্যাটাচমেন্ট বাদ যায়। শুধু টেক্সট ব্লক ইম্পোর্ট হয়।

ফাইলে থাকা যেসব কথোপকথনে পড়ার মতো কোনো টেক্সট নেই সেগুলো চুপচাপ বাদ দেওয়ার বদলে গোনা হয় আর স্কিপড হিসেবে রিপোর্ট করা হয়, তাই একটা স্কিপড কাউন্ট তথ্য, ব্যর্থতা নয়।

ব্যবহারযোগ্য কোনো টাইটেল না থাকা একটা কথোপকথন Imported chat হয়ে যায়, আর 120 ক্যারেক্টারের বেশি একটা টাইটেল ছেঁটে ফেলা হয়। কন্টেন্ট ক্যাপের চেয়ে বড় একটা ইম্পোর্ট করা মেসেজ প্রত্যাখ্যাত না হয়ে ছাঁটা হয়, তাই একটা বেশি বড় মেসেজ সেই কথোপকথনের বাকি অংশটা খরচ করায় না।

শেষে, টাইমস্ট্যাম্প: 2015-01-01-এর আগের তারিখের বা ভবিষ্যতের তারিখের একটা ইম্পোর্ট করা মেসেজের টাইমস্ট্যাম্পটা বাতিল করা হয় আর রো-টা ইম্পোর্টের সময়ে ফিরে যায়। যে চ্যাটটা তার আসল তারিখের বদলে আপনি যেদিন ইম্পোর্ট চালিয়েছেন সেই তারিখ নিয়ে আসে, সেটা এই নিয়মে পড়েছে।

কেন ইম্পোর্ট আবার চালানো নিরাপদ

সংক্ষিপ্ত উত্তরের ডিডুপ কি-টার একটা ফলব্যাক আছে। যখন একটা এক্সপোর্ট কোনো স্থিতিশীল কথোপকথন আইডি দেয় না, তখন কি-টা ট্রান্সক্রিপ্টেরই একটা হ্যাশ হয়ে যায়, তাই একটা পুনরায় রান তাও সেই কথোপকথনগুলোর সাথে মেলে, দ্বিতীয় কপি যোগ করার বদলে।

জানার মতো একটা ফলাফল: একটা ইম্পোর্ট করা চ্যাট মুছে ফেলে তারপর একই এক্সপোর্ট আবার ইম্পোর্ট করলে ডুপ্লিকেট রিপোর্ট করার বদলে চ্যাটটা ফিরে আসে। যদি আপনি ইচ্ছাকৃতভাবে একটা ইম্পোর্ট করা কথোপকথন মুছে থাকেন, সেই এক্সপোর্টটা আবার চালাবেন না যদি না আপনি চান সেটা ফিরে আসুক।

চেকলিস্ট
  • এক্সপোর্ট থেকে conversations.json বেছে নিন, এক্সপোর্ট zip নিজে নয়
  • একটা কাঁচা .json এক্সপোর্ট 300 MB পর্যন্ত গ্রহণযোগ্য, তার বেশি হলে .zip ব্যবহার করুন
  • সেশন আর কানেকশন এরর মানে সাইন ইন করুন বা রিকানেক্ট করুন, তারপর আবার চালান
  • ইম্পোর্ট করা যায়নি এমন একটা সংখ্যা মানে ইম্পোর্ট আবার চালান
  • একটা ইম্পোর্ট করা চ্যাট মুছে আবার ইম্পোর্ট করলে সেটা ফিরে আসে
  • একটা বড় ইম্পোর্ট একবারে 20 সেকেন্ডের জন্য থামা মানে রেট লিমিটিং, কোনো ত্রুটি নয়
  • ChatGPT-র রিজেনারেট করা ব্রাঞ্চ, আর Claude-এর থিংকিং ব্লক আর অ্যাটাচমেন্ট, ডিজাইন অনুযায়ী বাদ যায়

প্রায়ই জিজ্ঞাসিত প্রশ্ন

Whizi বলছে আমার ChatGPT এক্সপোর্টটা ChatGPT এক্সপোর্ট না। কেন?

মেসেজটা হলো That file is not a ChatGPT or Claude export. Look for conversations.json inside the export zip. আর এটা তখন আসে যখন পার্সার আপনার বেছে নেওয়া ফাইলে কোনো ফরম্যাটই শনাক্ত করতে পারে না, বা একটা zip একটা অচেনা পেলোড দেয়। Whizi যে ফাইলটা পড়ে সেটা conversations.json, তাই এক্সপোর্টটা আনজিপ করে সরাসরি সেই ফাইলটা বেছে নিন। যদি আপনি zip বেছে নিয়ে থাকেন আর বদলে There is no conversations.json inside that zip. Unzip it and pick the file directly. পেয়ে থাকেন, তাহলে zip-এ মিলে যাওয়া কোনো এন্ট্রিই নেই আর এক্সপোর্টটা আবার ডাউনলোড করতে হবে।

আমার ইম্পোর্ট মাঝপথে থেমে গেছে। আবার চালালে কি আমার চ্যাট ডুপ্লিকেট হবে?

না। একটা কাটা কানেকশন, একটা শেষ হয়ে যাওয়া সেশন, বা একটা ব্যর্থ ব্যাচের জন্য পুনরায় চালানোই উদ্দিষ্ট পুনরুদ্ধার: দ্বিতীয় রান একই চ্যাট একবারই বসায় আর শুধু যা বাকি আছে তা তুলে নেয়। আগে করার মতো কোনো ক্লিনআপ ধাপ নেই।

কেন শুধু আমার কিছু কথোপকথন ইম্পোর্ট হলো?

দুইটা ভিন্ন সংখ্যা দেখা যেতে পারে, আর তার মধ্যে শুধু একটাই ব্যর্থতা। {count} could not be imported. Run the import again to pick them up. সেই ব্যাচগুলো গোনে যেগুলো প্রতিটা রিট্রাইতে ব্যর্থ হয়েছে, আর ইম্পোর্ট আবার চালানোই সমাধান। একটা স্কিপড কাউন্ট হলো অন্যটা, আর এটা রিপোর্ট করে ফাইলে থাকা সেই কথোপকথনগুলো যাদের পড়ার মতো কোনো টেক্সট নেই, ভুল হয়ে যাওয়া কথোপকথন নয়।

ইম্পোর্টটা অনেকক্ষণ ধরে বসে আছে। এটা কি নষ্ট হয়ে গেছে?

এটা কতক্ষণ ধরে চলছে তার বদলে এটা আবার নড়ছে কিনা সেটা দেখুন। প্রায় 20 সেকেন্ডের একটা বিরতির পর আরও অগ্রগতি হলো রেট লিমিটার, কারণ ক্লায়েন্ট 20 সেকেন্ড অপেক্ষা করে আর আপনাকে কিছু দেখানোর বদলে আবার চেষ্টা করে। আসলে শেষ হয়ে যাওয়া একটা ইম্পোর্ট তা জানিয়ে দেয়, এই পাতার এরর স্ট্রিংগুলোর একটা দিয়ে বা {count} could not be imported. Run the import again to pick them up. সারাংশ দিয়ে। নীরবতা আর মাঝে মাঝে অগ্রগতি মানে এটাকে চলতে দিন।

আমার ChatGPT বা Claude এক্সপোর্ট ফাইলটা কি Whizi-তে আপলোড হয়?

না। এক্সপোর্ট ফাইলটা নিজে কখনো সার্ভারে পৌঁছায় না। আপনার ব্রাউজার সেটা পড়ে, পার্স করে, আর শুধু নরমালাইজড কথোপকথন পোস্ট করে, যে কারণে এই পাতার প্রতিটা ফরম্যাট এরর কিছু পাঠানোর আগেই ঘটে। পূর্ণ ডেটা হ্যান্ডলিং বিস্তারিত আছে Whizi আপনার ডেটা নিয়ে কী করে-তে।