{"id":25336,"date":"2026-06-14T14:18:31","date_gmt":"2026-06-14T14:18:31","guid":{"rendered":"https:\/\/umang.pk\/2026\/06\/14\/qvac-%da%a9%d8%a7-%d8%a7%d8%b3%d8%aa%d8%b9%d9%85%d8%a7%d9%84-%da%a9%d8%b1%d8%aa%db%92-%db%81%d9%88%d8%a6%db%92-%d8%a7%d9%be%d9%86%db%92-%db%81%d8%a7%d8%b1%da%88-%d9%88%db%8c%d8%a6%d8%b1-%d9%be%d8%b1\/"},"modified":"2026-06-14T14:18:31","modified_gmt":"2026-06-14T14:18:31","slug":"qvac-%da%a9%d8%a7-%d8%a7%d8%b3%d8%aa%d8%b9%d9%85%d8%a7%d9%84-%da%a9%d8%b1%d8%aa%db%92-%db%81%d9%88%d8%a6%db%92-%d8%a7%d9%be%d9%86%db%92-%db%81%d8%a7%d8%b1%da%88-%d9%88%db%8c%d8%a6%d8%b1-%d9%be%d8%b1","status":"publish","type":"post","link":"https:\/\/umang.pk\/en_us\/2026\/06\/14\/qvac-%da%a9%d8%a7-%d8%a7%d8%b3%d8%aa%d8%b9%d9%85%d8%a7%d9%84-%da%a9%d8%b1%d8%aa%db%92-%db%81%d9%88%d8%a6%db%92-%d8%a7%d9%be%d9%86%db%92-%db%81%d8%a7%d8%b1%da%88-%d9%88%db%8c%d8%a6%d8%b1-%d9%be%d8%b1\/","title":{"rendered":"QVAC \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0627\u067e\u0646\u06d2 \u06c1\u0627\u0631\u0688 \u0648\u06cc\u0626\u0631 \u067e\u0631 \u067e\u0631\u0627\u0626\u06cc\u0648\u06cc\u0679 \u0679\u06cc\u06a9\u0633\u0679 \u0679\u0648 \u0627\u0633\u067e\u06cc\u0686 \u06a9\u06cc\u0633\u06d2 \u0686\u0644\u0627\u0626\u06cc\u06ba"},"content":{"rendered":"\n<div id=\"\">\n<p>\u062c\u0628 \u0645\u06cc\u06ba \u0646\u06d2 QuizRope \u06a9\u0648 \u062d\u062a\u0645\u06cc \u0634\u06a9\u0644 \u062f\u06cc\u060c \u0627\u06cc\u06a9 \u062a\u0639\u0644\u06cc\u0645\u06cc \u0645\u0648\u0628\u0627\u0626\u0644 \u0627\u06cc\u067e \u062c\u0648 LLM \u06a9\u0648 \u062d\u0642\u06cc\u0642\u06cc \u0648\u0642\u062a \u0645\u06cc\u06ba \u0679\u06cc\u0648\u0634\u0646 \u0627\u0648\u0631 \u06c1\u0648\u0645 \u0648\u0631\u06a9 \u0645\u06cc\u06ba \u0645\u062f\u062f \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06cc \u06c1\u06d2\u060c \u0645\u062c\u06be\u06d2 \u0645\u0639\u0644\u0648\u0645 \u062a\u06be\u0627 \u06a9\u06c1 \u0627\u06af\u0644\u0627 \u0645\u0646\u0637\u0642\u06cc \u0645\u0631\u062d\u0644\u06c1 \u0622\u0648\u0627\u0632 \u062a\u06be\u0627\u06d4 \u0627\u0633\u06a9\u0631\u06cc\u0646 \u067e\u0631 \u0645\u062a\u0646 \u067e\u0691\u06be\u0646\u0627 \u0628\u06c1\u062a \u0627\u0686\u06be\u0627 \u06c1\u06d2\u060c \u0644\u06cc\u06a9\u0646 \u062c\u0633\u0645\u0627\u0646\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0627\u06cc\u06a9 AI \u0627\u0633\u062a\u0627\u062f \u06c1\u0648\u0646\u0627 <em>\u06a9\u06c1\u0646\u0627<\/em> \u0622\u067e \u06a9\u06d2 \u0633\u06cc\u06a9\u06be\u0646\u06d2 \u06a9\u06d2 \u067e\u0648\u0631\u06d2 \u062a\u062c\u0631\u0628\u06d2 \u06a9\u0648 \u0628\u062f\u0644 \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0642\u062f\u0631\u062a\u06cc \u0637\u0648\u0631 \u067e\u0631\u060c \u0645\u06cc\u0631\u06cc \u067e\u06c1\u0644\u06cc \u062c\u0628\u0644\u062a \u06a9\u0644\u0627\u0624\u0688 \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u0646\u06d2 \u0648\u0627\u0644\u0648\u06ba \u06a9\u0648 \u062f\u06cc\u06a9\u06be\u0646\u0627 \u062a\u06be\u06cc\u06d4 ElevenLabs \u062c\u06cc\u0633\u06cc \u062e\u062f\u0645\u0627\u062a \u062d\u06cc\u0631\u062a \u0627\u0646\u06af\u06cc\u0632 \u0622\u0648\u0627\u0632 \u06a9\u0627 \u0645\u0639\u06cc\u0627\u0631 \u067e\u06cc\u0634 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba\u060c \u0644\u06cc\u06a9\u0646 \u0645\u06cc\u06ba \u0646\u06d2 \u062a\u06cc\u0632\u06cc \u0633\u06d2 \u0646\u0645\u0628\u0631 \u0686\u0644\u0627 \u0644\u06cc\u0627\u06d4 API \u06a9\u06cc \u0642\u06cc\u0645\u062a\u0648\u06ba \u06a9\u06d2 \u062f\u0631\u0645\u06cc\u0627\u0646\u060c \u0637\u0648\u06cc\u0644 \u0679\u06cc\u0648\u0634\u0646 \u0633\u06cc\u0634\u0646\u0632 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0679\u0648\u06a9\u0646 \u06a9\u06cc \u06a9\u06be\u067e\u062a\u060c \u0627\u0648\u0631 \u0635\u0627\u0631\u0641\u06cc\u0646 \u06a9\u06cc \u0628\u0691\u06cc \u062a\u0639\u062f\u0627\u062f \u062c\u0633 \u06a9\u06cc \u06c1\u0645 \u062a\u0648\u0642\u0639 \u06a9\u0631 \u0631\u06c1\u06d2 \u062a\u06be\u06d2\u060c \u0631\u06cc\u0627\u0636\u06cc \u0628\u06c1\u062a \u062a\u06cc\u0632\u06cc \u0633\u06d2 \u062e\u0631\u0627\u0628 \u06c1\u0648 \u06af\u0626\u06cc\u06d4 \u06a9\u0633\u06cc \u0627\u06cc\u067e \u06a9\u06d2 \u0627\u0646\u062f\u0631 \u0628\u0648\u0644\u06d2 \u062c\u0627\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u06c1\u0631 \u0627\u06cc\u06a9 \u062c\u0645\u0644\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u062f\u0627 \u0634\u062f\u06c1 API \u067e\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u06a9\u0631\u0646\u0627 \u0622\u0632\u0627\u062f \u0688\u0648\u06cc\u0644\u067e\u0631\u0632 \u06a9\u06d2 \u0644\u06cc\u06d2 \u067e\u0627\u0626\u06cc\u062f\u0627\u0631 \u0646\u06c1\u06cc\u06ba \u062a\u06be\u0627\u06d4<\/p>\n<p>\u0627\u06af\u0631 \u0622\u067e \u067e\u0648\u0686\u06be \u0631\u06c1\u06d2 \u06c1\u06cc\u06ba \u06a9\u06c1 &quot;\u0622\u067e \u0646\u06d2 QuizRope \u06a9\u0648 \u06a9\u06c1\u0627\u06ba \u062a\u06a9 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u06cc\u0627 \u06c1\u06d2\u061f&#8221;\u060c \u0645\u06cc\u06ba \u0627\u06cc\u0645\u0627\u0646\u062f\u0627\u0631 \u06c1\u0648\u06ba \u06af\u0627: \u0645\u06cc\u06ba \u0646\u06d2 \u0627\u0633 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u06a9\u0648 \u0641\u0648\u0631\u0627\u064b \u062a\u0631\u06a9 \u06a9\u0631 \u062f\u06cc\u0627 \u06a9\u06cc\u0648\u0646\u06a9\u06c1 \u0645\u062c\u06be\u06d2 TTS \u0641\u0639\u0627\u0644\u06cc\u062a \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u0648\u0626\u06cc \u0645\u0639\u0642\u0648\u0644\u060c \u0633\u0633\u062a\u0627 \u062d\u0644 \u0646\u06c1\u06cc\u06ba \u0645\u0644 \u0633\u06a9\u0627\u06d4<\/p>\n<p>\u0628\u06c1\u062a \u0632\u06cc\u0627\u062f\u06c1 \u0644\u0627\u06af\u062a \u06a9\u06d2 \u0639\u0644\u0627\u0648\u06c1\u060c \u0627\u0646\u062a\u0638\u0627\u0631 \u06a9\u0627 \u0648\u0642\u062a \u062a\u06be\u0627\u06d4 \u0633\u0631\u0648\u0631 \u06a9\u06cc \u0637\u0631\u0641 \u0633\u06d2 \u067e\u0631\u0627\u0645\u067e\u0679\u0633 \u067e\u0631 \u06a9\u0627\u0631\u0631\u0648\u0627\u0626\u06cc \u06a9\u0631\u0646\u06d2\u060c \u0622\u0688\u06cc\u0648 \u0628\u0646\u0627\u0646\u06d2\u060c \u0627\u0648\u0631 \u0627\u0633\u06d2 \u0645\u0648\u0628\u0627\u0626\u0644 \u0688\u06cc\u0648\u0627\u0626\u0633 \u067e\u0631 \u0648\u0627\u067e\u0633 \u0633\u0679\u0631\u06cc\u0645 \u06a9\u0631\u0646\u06d2 \u06a9\u0627 \u0627\u0646\u062a\u0638\u0627\u0631 \u06af\u0641\u062a\u06af\u0648 \u06a9\u0627 \u0648\u06c1\u0645 \u0645\u06a9\u0645\u0644 \u0637\u0648\u0631 \u067e\u0631 \u062e\u062a\u0645 \u06a9\u0631 \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u06d4 \u0627\u0648\u0631\u060c \u0633\u0628 \u0633\u06d2 \u0628\u0631\u06cc \u0628\u0627\u062a\u060c \u0627\u0633 \u06a9\u0627 \u0645\u0637\u0644\u0628 \u06cc\u06c1 \u062a\u06be\u0627 \u06a9\u06c1 \u0637\u0627\u0644\u0628 \u0639\u0644\u0645 \u06a9\u06d2 \u067e\u0648\u0686\u06be\u06d2 \u06af\u0626\u06d2 \u06c1\u0631 \u0633\u0648\u0627\u0644 \u06a9\u0648 \u062a\u06be\u0631\u0688 \u067e\u0627\u0631\u0679\u06cc \u0633\u0631\u0648\u0631 \u06a9\u0648 \u0628\u06be\u06cc\u062c\u0627 \u062c\u0627\u0626\u06d2 \u06af\u0627\u06d4<\/p>\n<p>\u06cc\u06c1 \u0645\u0627\u06cc\u0648\u0633\u06cc \u0627\u06cc\u06a9 \u0627\u06cc\u0633\u0627 \u062d\u0644 \u062a\u0644\u0627\u0634 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u062a\u067e\u0631\u06cc\u0631\u06a9 \u0628\u0646 \u06af\u0626\u06cc \u062c\u0648 \u0642\u0627\u0628\u0644 \u0628\u06be\u0631\u0648\u0633\u06c1\u060c \u0622\u0641 \u0644\u0627\u0626\u0646\u060c \u0627\u0648\u0631 \u0645\u06a9\u0645\u0644 \u0637\u0648\u0631 \u067e\u0631 \u0644\u0627\u06af\u062a \u0633\u06d2 \u067e\u0627\u06a9 \u06c1\u0648\u06d4<\/p>\n<p>\u0627\u0633 \u0622\u0631\u0679\u06cc\u06a9\u0644 \u0645\u06cc\u06ba\u060c \u06c1\u0645 \u0627\u06cc\u06a9 React Native \u0627\u06cc\u067e\u0644\u06cc \u06a9\u06cc\u0634\u0646 \u0628\u0646\u0627\u0626\u06cc\u06ba \u06af\u06d2 \u062c\u0648 \u0622\u0644\u06d2 \u06a9\u06d2 \u0627\u067e\u0646\u06d2 \u06c1\u0627\u0631\u0688 \u0648\u06cc\u0626\u0631 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0627\u0639\u0644\u06cc\u0670 \u0645\u0639\u06cc\u0627\u0631 \u06a9\u06d2 \u0679\u06cc\u06a9\u0633\u0679 \u0679\u0648 \u0627\u0633\u067e\u06cc\u0686 (TTS) \u06a9\u0648 \u0645\u06a9\u0645\u0644 \u0637\u0648\u0631 \u067e\u0631 \u0622\u0641 \u0644\u0627\u0626\u0646 \u0627\u0646\u062c\u0627\u0645 \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0627\u06af\u0631 \u0622\u067e \u0646\u06d2 \u0627\u067e\u0646\u0627 \u0645\u0627\u062d\u0648\u0644 \u062a\u0631\u062a\u06cc\u0628 \u0646\u06c1\u06cc\u06ba \u062f\u06cc\u0627 \u06c1\u06d2 \u06cc\u0627 \u0645\u0642\u0627\u0645\u06cc \u062a\u062e\u0645\u06cc\u0646\u06c1 \u06a9\u06cc \u0628\u0646\u06cc\u0627\u062f\u06cc \u0628\u0627\u062a\u0648\u06ba \u067e\u0631 \u0631\u06cc\u0641\u0631\u06cc\u0634\u0631 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u06c1\u06d2\u060c \u062a\u0648 \u0645\u06cc\u06ba \u06c1\u0645\u0627\u0631\u0627 \u067e\u0686\u06be\u0644\u0627 \u0645\u0636\u0645\u0648\u0646 \u067e\u0691\u06be\u0646\u06d2 \u06a9\u06cc \u062a\u062c\u0648\u06cc\u0632 \u06a9\u0631\u062a\u0627 \u06c1\u0648\u06ba: QVAC \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 React Native \u0645\u06cc\u06ba \u0645\u0642\u0627\u0645\u06cc LLM \u06a9\u0648 \u0622\u0641 \u0644\u0627\u0626\u0646 \u06a9\u06cc\u0633\u06d2 \u0686\u0644\u0627\u06cc\u0627 \u062c\u0627\u0626\u06d2\u06d4 \u0627\u0633 \u0645\u06cc\u06ba \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u06a9\u06cc \u0634\u0631\u0648\u0639\u0627\u062a\u060c \u067e\u0631\u06cc \u0628\u0644\u0688\u060c \u0627\u0648\u0631 \u0628\u0646\u06cc\u0627\u062f\u06cc \u06c1\u0627\u0631\u0688\u0648\u06cc\u0626\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u0634\u0627\u0645\u0644 \u06c1\u06cc\u06ba\u06d4<\/p>\n<p>\u06cc\u06c1 \u06af\u0627\u0626\u06cc\u0688 \u0641\u0631\u0636 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u0622\u067e \u06a9\u06d2 \u067e\u0627\u0633 \u067e\u06c1\u0644\u06d2 \u0633\u06d2 \u06c1\u06cc QVAC SDK \u06a9\u0646\u0641\u06cc\u06af\u0631 \u06c1\u0648 \u0686\u06a9\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0627\u06cc\u06a9 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u0641\u0632\u06cc\u06a9\u0644 \u0688\u06cc\u0648\u0627\u0626\u0633 \u067e\u0631 \u0686\u0644\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u062a\u06cc\u0627\u0631 \u06c1\u06d2\u06d4<\/p>\n<h2 id=\"heading-table-of-contents\">\u0627\u0646\u0688\u06cc\u06a9\u0633<\/h2>\n<h2 id=\"heading-prerequisites\">\u0634\u0631\u0637\u06cc\u06ba<\/h2>\n<p>\u0627\u0633 \u0645\u0636\u0645\u0648\u0646 \u0633\u06d2 \u0632\u06cc\u0627\u062f\u06c1 \u0633\u06d2 \u0632\u06cc\u0627\u062f\u06c1 \u0641\u0627\u0626\u062f\u06c1 \u0627\u0679\u06be\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0622\u067e \u06a9\u0648 \u062c\u062f\u06cc\u062f \u0648\u06cc\u0628 \u0627\u0648\u0631 \u0645\u0648\u0628\u0627\u0626\u0644 \u0688\u06cc\u0648\u0644\u067e\u0645\u0646\u0679 \u0645\u06cc\u06ba \u0645\u0636\u0628\u0648\u0637 \u0628\u0646\u06cc\u0627\u062f \u0631\u06a9\u06be\u0646\u06cc \u0686\u0627\u06c1\u06cc\u06d2\u06d4<\/p>\n<ul>\n<li>\n<p><strong>JavaScript\/TypeScript \u0627\u0648\u0631 React<\/strong>: React \u06a9\u06d2 \u062a\u0635\u0648\u0631\u0627\u062a \u0627\u0648\u0631 \u062e\u0627\u0635 \u0637\u0648\u0631 \u067e\u0631 \u06c1\u06a9\u0633 \u06a9\u0627 \u0639\u0644\u0645 <code>useState<\/code>\u060c <code>useEffect<\/code>\u0627\u0648\u0631 <code>useRef<\/code>.<\/p>\n<\/li>\n<li>\n<p><strong>\u0645\u0642\u0627\u0645\u06cc \u0627\u0648\u0631 \u0627\u06cc\u06a9\u0633\u067e\u0648 \u067e\u0631 \u0631\u062f\u0639\u0645\u0644 \u0638\u0627\u06c1\u0631 \u06a9\u0631\u06cc\u06ba\u06d4<\/strong>: \u062a\u0631\u062a\u06cc\u0628 \u06a9\u06d2 \u0688\u06be\u0627\u0646\u0686\u06d2 \u06a9\u06cc \u0628\u0646\u06cc\u0627\u062f\u06cc \u062a\u0641\u06c1\u06cc\u0645\u060c \u062c\u06cc\u0633\u06d2 <code>View<\/code>\u060c <code>ScrollView<\/code>\u060c <code>TextInput<\/code>) \u0627\u0648\u0631 \u0627\u0633\u0679\u0627\u0626\u0644 \u06a9\u06d2 \u0642\u0648\u0627\u0639\u062f\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u063a\u06cc\u0631 \u0645\u0637\u0627\u0628\u0642\u062a \u067e\u0630\u06cc\u0631 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u067e\u0679 \u0627\u0648\u0631 \u0628\u0627\u0626\u0646\u0631\u06cc \u0628\u0641\u0631\u0632<\/strong>: \u062a\u062c\u0631\u0628\u06c1 <code>async\/await<\/code>\u0648\u0639\u062f\u0648\u06ba \u0627\u0648\u0631 \u0635\u0641\u0648\u06ba \u06a9\u06cc \u0628\u0646\u06cc\u0627\u062f\u06cc \u06c1\u06cc\u0631\u0627 \u067e\u06be\u06cc\u0631\u06cc <code>Int16Array<\/code> \u06cc\u0627 <code>Buffer<\/code>.<\/p>\n<\/li>\n<li>\n<p><strong>\u062a\u0631\u0642\u06cc \u06a9\u06cc \u062a\u0639\u0645\u06cc\u0631 \u06a9\u0627 \u0645\u0627\u062d\u0648\u0644<\/strong>: \u0645\u0642\u0627\u0645\u06cc \u062a\u0631\u0642\u06cc\u0627\u062a\u06cc \u062a\u0627\u0644\u06cc\u0641 \u06a9\u06d2 \u0627\u062d\u06a9\u0627\u0645\u0627\u062a \u067e\u0631 \u0639\u0645\u0644 \u062f\u0631\u0622\u0645\u062f \u06a9\u0627 \u0639\u0644\u0645\u060c \u062e\u0627\u0635 \u0637\u0648\u0631 \u067e\u0631 <code>npx expo prebuild<\/code> \u0645\u0642\u0627\u0645\u06cc iOS \u0627\u0648\u0631 Android \u0645\u0627\u0688\u06cc\u0648\u0644\u0632 \u0628\u0646\u0627\u0626\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u062c\u0633\u0645\u0627\u0646\u06cc \u0645\u0648\u0628\u0627\u0626\u0644 \u0622\u0644\u06c1<\/strong>: \u0686\u0648\u0646\u06a9\u06c1 \u0645\u0642\u0627\u0645\u06cc \u0645\u0634\u06cc\u0646 \u0644\u0631\u0646\u0646\u06af \u0645\u0627\u0688\u0644\u0632 \u0688\u06cc\u0648\u0627\u0626\u0633 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0645\u062e\u0635\u0648\u0635 \u06c1\u0627\u0631\u0688\u0648\u06cc\u0626\u0631 \u0627\u06cc\u06a9\u0633\u0644\u0631\u06cc\u0634\u0646 \u0627\u0648\u0631 \u0645\u0642\u0627\u0645\u06cc \u0627\u0635\u0644\u0627\u062d \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u0627\u0633 \u0644\u06cc\u06d2 QVAC SDK \u0633\u0645\u06cc\u0644\u06cc\u0679\u0631 \u0645\u0627\u062d\u0648\u0644 \u06a9\u0648 \u0633\u067e\u0648\u0631\u0679 \u0646\u06c1\u06cc\u06ba \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0622\u067e \u06a9\u06d2 \u067e\u0627\u0633 \u0627\u06cc\u06a9 \u0641\u0632\u06cc\u06a9\u0644 iOS \u06cc\u0627 \u0627\u06cc\u0646\u0688\u0631\u0627\u0626\u06cc\u0688 \u0679\u06cc\u0633\u0679 \u0688\u06cc\u0648\u0627\u0626\u0633 \u06c1\u0648\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2 \u062c\u0633 \u0645\u06cc\u06ba \u0688\u06cc\u0648\u0644\u067e\u0631 \u0645\u0648\u0688 \u0641\u0639\u0627\u0644 \u06c1\u0648\u06d4<\/p>\n<\/li>\n<\/ul>\n<h2 id=\"heading-what-is-qvac\">QVAC \u06a9\u06cc\u0627 \u06c1\u06d2\u061f<\/h2>\n<p>\u0645\u0632\u06cc\u062f \u0645\u0624\u062b\u0631 \u0637\u0631\u06cc\u0642\u06d2 \u0633\u06d2 \u067e\u06cc\u0631\u0648\u06cc \u06a9\u0631\u0646\u06d2 \u0645\u06cc\u06ba \u0622\u067e \u06a9\u06cc \u0645\u062f\u062f \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0622\u0626\u06cc\u06d2 \u0645\u0639\u0644\u0648\u0645 \u06a9\u0631\u06cc\u06ba \u06a9\u06c1 QVAC \u06a9\u06cc\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u06cc\u06c1 \u06a9\u06cc\u0648\u06ba \u0645\u0648\u062c\u0648\u062f \u06c1\u06d2\u06d4<\/p>\n<p>QVAC\u060c Tether \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u062a\u06cc\u0627\u0631 \u06a9\u06cc\u0627 \u06af\u06cc\u0627\u060c \u0627\u06cc\u06a9 \u0645\u0642\u0627\u0645\u06cc-\u067e\u06c1\u0644\u0627 AI SDK \u06c1\u06d2 \u062c\u0633\u06d2 \u06a9\u0631\u0627\u0633 \u067e\u0644\u06cc\u0679 \u0641\u0627\u0631\u0645\u060c \u067e\u06cc\u0626\u0631 \u0679\u0648 \u067e\u06cc\u0626\u0631 (P2P) \u0627\u06cc\u067e\u0644\u06cc \u06a9\u06cc\u0634\u0646\u0632 \u0627\u0648\u0631 \u0633\u0633\u0679\u0645\u0632 \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0688\u06cc\u0632\u0627\u0626\u0646 \u06a9\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0628\u0691\u06d2 \u0644\u06cc\u0646\u06af\u0648\u06cc\u062c \u0645\u0627\u0688\u0644 (LLM) \u06cc\u0627 \u0679\u06cc\u06a9\u0633\u0679 \u0679\u0648 \u0627\u0633\u067e\u06cc\u0686 (TTS) \u0627\u0646\u062c\u0646\u0648\u06ba \u06a9\u0627 \u0641\u0627\u0626\u062f\u06c1 \u0627\u0679\u06be\u0627\u0646\u06d2 \u0648\u0627\u0644\u06cc \u0628\u06c1\u062a \u0633\u06cc \u0645\u0648\u0628\u0627\u0626\u0644 \u0627\u06cc\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\u0632 \u06a9\u0644\u0627\u0624\u0688 \u06c1\u0648\u0633\u0679\u0688 APIs (\u062c\u06cc\u0633\u06d2 OpenAI \u06cc\u0627 ElevenLabs) \u06a9\u0648 \u0646\u06cc\u0679 \u0648\u0631\u06a9 \u06a9\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u0648\u06ba \u067e\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba\u06d4 \u0627\u06af\u0631\u0686\u06c1 \u0622\u0633\u0627\u0646 \u06c1\u06d2\u060c \u06cc\u06c1 \u0645\u0627\u0688\u0644 \u0646\u06cc\u0679 \u0648\u0631\u06a9 \u06a9\u0646\u06cc\u06a9\u0679\u06cc\u0648\u06cc\u0679\u06cc\u060c \u0628\u0627\u0631 \u0628\u0627\u0631 \u0686\u0644\u0646\u06d2 \u0648\u0627\u0644\u06cc API \u06a9\u06d2 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u06cc \u0641\u06cc\u0633\u060c \u0627\u0648\u0631 \u0635\u0627\u0631\u0641 \u06a9\u06d2 \u0688\u06cc\u0679\u0627 \u06a9\u0648 \u0641\u0631\u06cc\u0642 \u062b\u0627\u0644\u062b \u0633\u0631\u0648\u0631\u0632 \u067e\u0631 \u0645\u0646\u062a\u0642\u0644 \u06a9\u0631\u0646\u06d2 \u067e\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u0645\u062a\u0639\u0627\u0631\u0641 \u06a9\u0631\u0627\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>QVAC AI \u0645\u0627\u0688\u0644\u0632 \u06a9\u0648 \u0628\u0631\u0627\u06c1 \u0631\u0627\u0633\u062a \u06a9\u0644\u0627\u0626\u0646\u0679 \u0688\u06cc\u0648\u0627\u0626\u0633 \u067e\u0631 \u0686\u0644\u0627 \u06a9\u0631 \u0627\u06cc\u06a9 \u0645\u062a\u0628\u0627\u062f\u0644 \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u0645\u0642\u0627\u0645\u06cc-\u067e\u06c1\u0644\u0627 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u06a9\u0626\u06cc \u0639\u0645\u0644\u06cc \u0641\u0648\u0627\u0626\u062f \u067e\u06cc\u0634 \u06a9\u0631\u062a\u0627 \u06c1\u06d2:<\/p>\n<ul>\n<li>\n<p><strong>\u067e\u06c1\u0644\u06d2 \u0644\u0648\u06a9\u0644 \u0686\u0644\u0627\u0626\u06cc\u06ba\u06d4<\/strong>: \u06a9\u0644\u0627\u0626\u0646\u0679 \u06c1\u0627\u0631\u0688\u0648\u06cc\u0626\u0631 \u067e\u0631 \u0628\u0631\u0627\u06c1 \u0631\u0627\u0633\u062a \u0627\u0646\u062f\u0627\u0632\u06c1 \u0686\u0644\u0627\u062a\u0627 \u06c1\u06d2\u060c \u06a9\u0633\u06cc \u0628\u06cc\u0631\u0648\u0646\u06cc API \u06cc\u0627 \u0641\u0639\u0627\u0644 \u0627\u0646\u0679\u0631\u0646\u06cc\u0679 \u06a9\u0646\u06a9\u0634\u0646 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u0646\u06c1\u06cc\u06ba \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u067e\u06cc\u0626\u0631 \u0679\u0648 \u067e\u06cc\u0626\u0631 (P2P) \u0633\u067e\u0648\u0631\u0679<\/strong>: \u0627\u0646\u0641\u0631\u0646\u0633 \u0679\u0627\u0633\u06a9\u0633 \u06a9\u0648 \u0645\u0642\u0627\u0645\u06cc \u0646\u06cc\u0679 \u0648\u0631\u06a9 \u067e\u0631 \u062a\u0642\u0633\u06cc\u0645 \u06a9\u06cc\u0627 \u062c\u0627 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u060c \u062c\u0633 \u0633\u06d2 \u0645\u0631\u06a9\u0632\u06cc \u0633\u0631\u0648\u0631 \u06a9\u06d2 \u0628\u063a\u06cc\u0631 \u06a9\u0627\u0645 \u06a9\u06d2 \u0628\u0648\u062c\u06be \u06a9\u0648 \u0645\u062a\u0648\u0627\u0632\u0646 \u06a9\u0631\u0646\u06d2 \u0645\u06cc\u06ba \u0645\u062f\u062f \u0645\u0644\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u06a9\u0631\u0627\u0633 \u067e\u0644\u06cc\u0679 \u0641\u0627\u0631\u0645 \u0645\u0637\u0627\u0628\u0642\u062a<\/strong>: \u0627\u06cc\u06a9 \u0648\u0627\u062d\u062f JavaScript\/TypeScript \u0627\u0646\u0679\u0631\u0641\u06cc\u0633 \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062c\u0648 \u0645\u062e\u062a\u0644\u0641 \u0642\u0633\u0645 \u06a9\u06d2 \u06c1\u0627\u0631\u0688 \u0648\u06cc\u0626\u0631 \u0627\u0648\u0631 \u0631\u0646 \u0679\u0627\u0626\u0645 \u0645\u0627\u062d\u0648\u0644 \u0645\u06cc\u06ba \u0645\u0633\u062a\u0642\u0644 \u0637\u0648\u0631 \u067e\u0631 \u06a9\u0627\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0645\u0631\u0628\u0648\u0637 \u062e\u0635\u0648\u0635\u06cc\u0627\u062a<\/strong>: \u0679\u06cc\u06a9\u0633\u0679 \u062c\u0646\u0631\u06cc\u0634\u0646\u060c \u0679\u0631\u0627\u0646\u0633\u06a9\u0631\u067e\u0634\u0646\u060c \u0627\u0645\u06cc\u062c \u062c\u0646\u0631\u06cc\u0634\u0646\u060c \u0627\u0648\u0631 \u0627\u0633\u067e\u06cc\u0686 \u0633\u0646\u062a\u06be\u06cc\u0633\u0632 \u06a9\u0648 \u0627\u06cc\u06a9 \u06c1\u06cc \u067e\u06cc\u06a9\u062c \u0645\u06cc\u06ba \u0638\u0627\u06c1\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<\/ul>\n<h3 id=\"heading-key-concepts-for-on-device-inference\">\u0622\u0646 \u0688\u06cc\u0648\u0627\u0626\u0633 \u0627\u0646\u0641\u0631\u0646\u0633 \u06a9\u06d2 \u06a9\u0644\u06cc\u062f\u06cc \u062a\u0635\u0648\u0631\u0627\u062a<\/h3>\n<p>\u06cc\u06c1 \u0633\u0645\u062c\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u06c1 QVAC \u0645\u0648\u0628\u0627\u0626\u0644 \u0622\u0644\u0627\u062a \u067e\u0631 \u06a9\u06cc\u0633\u06d2 \u0686\u0644\u062a\u0627 \u06c1\u06d2\u060c \u0622\u067e \u06a9\u0648 \u0686\u0646\u062f \u0627\u06c1\u0645 \u062a\u0635\u0648\u0631\u0627\u062a \u06a9\u0648 \u0630\u06c1\u0646 \u0645\u06cc\u06ba \u0631\u06a9\u06be\u0646\u06d2 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u06c1\u06d2\u06d4<\/p>\n<ul>\n<li>\n<p><strong>\u0622\u0646 \u0688\u06cc\u0648\u0627\u0626\u0633 \u06a9\u0627 \u0627\u0646\u062f\u0627\u0632\u06c1<\/strong>: \u0645\u0642\u0627\u0645\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0645\u0627\u0688\u0644 \u06a9\u06cc\u0644\u06a9\u0648\u0644\u06cc\u0634\u0646 \u0686\u0644\u0627\u0626\u06cc\u06ba\u06d4 \u0627\u06cc\u06a9 \u0627\u0646\u062c\u0646 \u067e\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2\u060c QVAC \u06a9\u0627\u0645 \u0627\u0646\u062c\u0627\u0645 \u062f\u06d2 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u060c \u062c\u06cc\u0633\u06d2 <code>llama.cpp<\/code> \u0645\u062a\u0646 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c <code>whisper.cpp<\/code> \u0679\u0631\u0627\u0646\u0633\u06a9\u0631\u067e\u0634\u0646 \u06cc\u0627 \u0627\u0645\u06cc\u062c \u062c\u0646\u0631\u06cc\u0634\u0646 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u0633\u0679\u0645 \u0688\u0641\u06cc\u0648\u0698\u0646 \u0628\u06cc\u06a9 \u0627\u06cc\u0646\u0688)\u06d4 \u0627\u0646\u062f\u0631\u0648\u0646\u06cc \u0637\u0648\u0631 \u067e\u0631\u060c \u0627\u0646 \u0627\u0646\u062c\u0646\u0648\u06ba \u06a9\u06cc \u0645\u06cc\u0645\u0648\u0631\u06cc \u0645\u06cc\u067e\u0646\u06af \u0645\u0627\u0688\u0644 \u06a9\u06d2 \u0648\u0632\u0646 \u06a9\u0648 \u0628\u0631\u0627\u06c1 \u0631\u0627\u0633\u062a \u0688\u06cc\u0648\u0627\u0626\u0633 \u06a9\u06cc RAM \u0645\u06cc\u06ba \u0634\u0645\u0627\u0631 \u06a9\u0631\u062a\u06cc \u06c1\u06d2 \u0627\u0648\u0631 \u0645\u0642\u0627\u0645\u06cc GPU \u06c1\u0627\u0631\u0688\u0648\u06cc\u0626\u0631 \u0627\u06cc\u06a9\u0633\u0644\u0631\u06cc\u0634\u0646 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u062d\u0633\u0627\u0628\u0627\u062a \u06a9\u0648 \u0627\u0646\u062c\u0627\u0645 \u062f\u06cc\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u06a9\u0648\u0627\u0646\u0679\u0627\u0626\u0632\u06cc\u0634\u0646 (GGUF \u0641\u0627\u0631\u0645\u06cc\u0679)<\/strong>: \u0627\u06cc\u06a9 \u0631\u06cc\u0627\u0636\u06cc\u0627\u062a\u06cc \u0627\u0635\u0644\u0627\u062d \u06a9\u06cc \u062a\u06a9\u0646\u06cc\u06a9 \u062c\u0648 \u0645\u0627\u0688\u0644 \u06a9\u06d2 \u0648\u0632\u0646 \u06a9\u0648 \u0633\u06a9\u06cc\u0691\u062a\u06cc \u06c1\u06d2 (\u0645\u062b\u0644\u0627\u064b \u0645\u0639\u06cc\u0627\u0631\u06cc 16 \u0628\u0679 \u0641\u0644\u0648\u0679\u0646\u06af \u067e\u0648\u0627\u0626\u0646\u0679 \u067e\u0631\u06cc\u0632\u06cc\u0634\u0646 \u0633\u06d2 4- \u06cc\u0627 8 \u0628\u0679 \u0627\u0646\u0679\u06cc\u062c\u0631\u0632 \u062a\u06a9)\u06d4 \u06cc\u06c1 \u0645\u0627\u0688\u0644 \u06a9\u0648 \u0635\u0627\u0631\u0641\u06cc\u0646 \u06a9\u06d2 \u0645\u0648\u0628\u0627\u0626\u0644 \u06c1\u0627\u0631\u0688 \u0648\u06cc\u0626\u0631 \u06a9\u06cc \u0645\u06cc\u0645\u0648\u0631\u06cc \u06a9\u06cc \u0631\u06a9\u0627\u0648\u0679\u0648\u06ba \u06a9\u0648 \u0627\u067e\u0646\u0627\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0627\u0639\u0644\u06cc \u0622\u0624\u0679 \u067e\u0679 \u06a9\u0648\u0627\u0644\u0679\u06cc \u0628\u0631\u0642\u0631\u0627\u0631 \u0631\u06a9\u06be\u0646\u06d2 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u06a9\u0644\u06cc\u062f\u06cc \u0642\u062f\u0631 (KV) \u06a9\u06cc\u0634\u06d2<\/strong>: \u0645\u06cc\u0645\u0648\u0631\u06cc \u06a9\u0627 \u0627\u06cc\u06a9 \u0639\u0644\u0627\u0642\u06c1 \u062c\u0648 \u067e\u0686\u06be\u0644\u06d2 \u0679\u0648\u06a9\u0646\u0632 \u06a9\u06cc \u062d\u0633\u0627\u0628\u06cc \u062d\u0627\u0644\u062a \u06a9\u0648 \u0630\u062e\u06cc\u0631\u06c1 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062a\u0627\u06a9\u06c1 \u067e\u0648\u0631\u06d2 \u0633\u06cc\u0627\u0642 \u0648 \u0633\u0628\u0627\u0642 \u06a9\u06cc \u0648\u0646\u0688\u0648 \u06a9\u0648 \u06c1\u0631 \u0644\u0641\u0638 \u06cc\u0627 \u0679\u0648\u06a9\u0646 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u062f\u0648\u0628\u0627\u0631\u06c1 \u062c\u0627\u0646\u0686\u0646\u06d2 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u0646\u06c1 \u067e\u0691\u06d2\u06d4<\/p>\n<\/li>\n<\/ul>\n<h2 id=\"heading-the-architecture-supported-by-qvac\">QVAC \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06c1 \u062a\u0639\u0627\u0648\u0646 \u06cc\u0627\u0641\u062a\u06c1 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631\u0627\u062a<\/h2>\n<p>\u06a9\u0633\u06cc \u0628\u06be\u06cc \u06a9\u0648\u0688 \u06a9\u0648 \u0644\u06a9\u06be\u0646\u06d2 \u0633\u06d2 \u067e\u06c1\u0644\u06d2\u060c \u06cc\u06c1 \u0633\u0645\u062c\u06be\u0646\u0627 \u0636\u0631\u0648\u0631\u06cc \u06c1\u06d2 \u06a9\u06c1 \u0627\u0635\u0644 \u0645\u06cc\u06ba \u06c1\u0688 \u06a9\u06d2 \u0646\u06cc\u0686\u06d2 \u06a9\u06cc\u0627 \u06c1\u0648 \u0631\u06c1\u0627 \u06c1\u06d2\u06d4 \u0622\u067e \u06a9\u06d2 \u0622\u0644\u06d2 \u06a9\u0648 \u067e\u06af\u06be\u0644\u0627\u0626\u06d2 \u0628\u063a\u06cc\u0631 \u0645\u0642\u0627\u0645\u06cc \u0639\u0645\u0644 \u06a9\u0648 \u0633\u0646\u0628\u06be\u0627\u0644\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c QVAC SDK \u0622\u067e\u0679\u0645\u0627\u0626\u0632\u0688 \u06a9\u0645\u06cc\u0648\u0646\u0679\u06cc \u0645\u06cc\u0646\u0679\u06cc\u0646\u0646\u0633 \u0633\u06d2 \u0645\u0646\u0633\u0644\u06a9 \u06c1\u0648\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u06c1\u0627\u0631\u0688\u0648\u06cc\u0626\u0631 \u0628\u0627\u0626\u0646\u0688\u0646\u06af\u0632 \u0627\u0648\u0631 \u0645\u0627\u0688\u0644 \u0644\u0627\u0626\u0641 \u0633\u0627\u0626\u06cc\u06a9\u0644 \u06a9\u0627 \u0627\u0646\u062a\u0638\u0627\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 <strong>\u062c\u06cc \u062c\u06cc \u0627\u06cc\u0645 \u0627\u06cc\u0644<\/strong> \u0627\u0646\u0641\u0631\u0646\u0633 \u067e\u0633\u062f\u06cc\u062f\u06d4<\/p>\n<p>\u0627\u06cc\u06a9 \u0633\u0627\u0626\u0632 \u0645\u06cc\u06ba \u0641\u0679 \u06c1\u0648\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u062a\u0645\u0627\u0645 \u0627\u067e\u0631\u0648\u0686 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2\u060c QVAC SDK \u062a\u0642\u0631\u06cc\u0631 \u06a9\u06cc \u062a\u0631\u06a9\u06cc\u0628 \u06a9\u06d2 \u0644\u06cc\u06d2 \u062f\u0648 \u0627\u0644\u06af \u0627\u0639\u0635\u0627\u0628\u06cc \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u06a9\u06cc \u062d\u0645\u0627\u06cc\u062a \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0622\u067e \u06a9\u06cc \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u06a9\u06cc \u0636\u0631\u0648\u0631\u06cc\u0627\u062a \u067e\u0631 \u0645\u0646\u062d\u0635\u0631 \u06c1\u06d2\u060c \u0686\u0627\u06c1\u06d2 \u0622\u067e \u0641\u0648\u0631\u06cc \u0622\u0648\u0627\u0632 \u06a9\u06cc \u0646\u0642\u0644 \u0686\u0627\u06c1\u062a\u06d2 \u06c1\u0648\u06ba \u06cc\u0627 \u067e\u06c1\u0644\u06d2 \u0633\u06d2 \u062a\u0631\u0628\u06cc\u062a \u06cc\u0627\u0641\u062a\u06c1\u060c \u0627\u0646\u062a\u06c1\u0627\u0626\u06cc \u0627\u0639\u0644\u06cc\u0670 \u0645\u062e\u0644\u0635 \u0622\u0648\u0627\u0632\u06cc\u06ba\u060c \u0622\u067e \u0627\u0646 \u0645\u06cc\u06ba \u0633\u06d2 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0631 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba: <strong>\u0686\u06cc\u0679\u0631 \u0628\u0627\u06a9\u0633<\/strong> \u0627\u0648\u0631 <strong>\u0633\u067e\u0631\u0633\u0648\u0646\u06a9<\/strong>.<\/p>\n<table>\n<thead>\n<tr>\n<th>\u062e\u0635\u0648\u0635\u06cc\u062a<\/th>\n<th>\u0686\u06cc\u0679\u0631 \u0628\u0627\u06a9\u0633<\/th>\n<th>\u0633\u067e\u0631\u0633\u0648\u0646\u06a9<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>\u0641\u0646 \u062a\u0639\u0645\u06cc\u0631<\/strong><\/td>\n<td>\u0679\u0631\u0627\u0646\u0633\u0641\u0627\u0631\u0645\u0631 \u067e\u0631 \u0645\u0628\u0646\u06cc \u0632\u0628\u0627\u0646 \u06a9\u0627 \u0645\u0627\u0688\u0644<\/td>\n<td>\u0628\u0627\u0632\u06cc \u067e\u0631 \u0645\u0628\u0646\u06cc \u0627\u0648\u06cc\u06a9\u062a \u0634\u0648\u0631 \u06a9\u0648 \u06c1\u0679\u0627\u0646\u0627<\/td>\n<\/tr>\n<tr>\n<td><strong>\u0645\u0627\u0688\u0644 \u06a9\u06cc \u0633\u0627\u062e\u062a<\/strong><\/td>\n<td>\u062a\u0642\u0633\u06cc\u0645 \u06a9\u0631\u0646\u0627 (T3 GGUF + S3Gen \u0633\u0627\u062a\u06be\u06cc)<\/td>\n<td>\u0633\u0646\u06af\u0644 \u0641\u0627\u0626\u0644 (GGUF)<\/td>\n<\/tr>\n<tr>\n<td><strong>\u0622\u0648\u0627\u0632 \u06a9\u0627 \u0637\u0631\u06cc\u0642\u06c1<\/strong><\/td>\n<td>\u0632\u06cc\u0631\u0648 \u0634\u0627\u0679 \u0622\u0648\u0627\u0632 \u06a9\u06cc \u0646\u0642\u0644 (WAV \u062f\u06cc\u06a9\u06be\u06cc\u06ba)<\/td>\n<td>\u067e\u06c1\u0644\u06d2 \u0633\u06d2 \u062a\u0631\u0628\u06cc\u062a \u06cc\u0627\u0641\u062a\u06c1 \u0622\u0648\u0627\u0632 \u06a9\u06d2 \u0627\u0646\u062f\u0627\u0632<\/td>\n<\/tr>\n<tr>\n<td><strong>\u0646\u0645\u0648\u0646\u06d2 \u0644\u06cc\u0646\u06d2 \u06a9\u06cc \u0634\u0631\u062d<\/strong><\/td>\n<td>24,000 Hz<\/td>\n<td>44,100 \u06c1\u0631\u0679\u062c<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3 id=\"heading-1-the-chatterbox-engine\">1. \u0686\u06cc\u0679\u0631 \u0628\u0627\u06a9\u0633 \u0627\u0646\u062c\u0646<\/h3>\n<p>\u0686\u06cc\u0679\u0631 \u0628\u0627\u06a9\u0633 \u0627\u0633 \u067e\u0631 \u0628\u0646\u0627\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2: <strong>\u0679\u0631\u0627\u0646\u0633\u0641\u0627\u0631\u0645\u0631 \u067e\u0631 \u0645\u0628\u0646\u06cc \u0632\u0628\u0627\u0646 \u06a9\u0627 \u0645\u0627\u0688\u0644<\/strong> \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u06cc\u06c1 \u0622\u0688\u06cc\u0648 \u062c\u0646\u0631\u06cc\u0634\u0646 \u06a9\u0648 \u0627\u0633\u06cc \u0637\u0631\u062d \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062c\u0633 \u0637\u0631\u062d LLM \u06a9\u0633\u06cc \u062c\u0645\u0644\u06d2 \u0645\u06cc\u06ba \u0627\u06af\u0644\u06d2 \u0644\u0641\u0638 \u06a9\u06cc \u067e\u06cc\u0634\u06cc\u0646 \u06af\u0648\u0626\u06cc \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0644\u06cc\u06a9\u0646 \u0627\u0633 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2 \u0627\u0646\u0641\u0631\u0627\u062f\u06cc \u0635\u0648\u062a\u06cc \u0679\u0648\u06a9\u0646 \u06a9\u06cc \u067e\u06cc\u0634 \u06af\u0648\u0626\u06cc \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u06cc\u06c1 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u0686\u06cc\u0679\u0631 \u0628\u0627\u06a9\u0633 \u06a9\u0648 \u0627\u0633 \u0645\u06cc\u06ba \u0627\u06cc\u06a9\u0633\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u062a\u0627 \u06c1\u06d2: <strong>\u0632\u06cc\u0631\u0648 \u0634\u0627\u0679 \u0622\u0648\u0627\u0632 \u06a9\u06cc \u0646\u0642\u0644<\/strong>. \u0645\u06a9\u0645\u0644 \u0637\u0648\u0631 \u067e\u0631 \u067e\u06c1\u0644\u06d2 \u0633\u06d2 \u0628\u06be\u0646\u06cc \u06c1\u0648\u0626\u06cc \u0622\u0648\u0627\u0632\u0648\u06ba \u067e\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2\u060c \u0622\u067e \u0627\u067e\u0646\u06d2 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0648 \u067e\u06c1\u0646\u0686\u0627 \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 <code>referenceAudioSrc<\/code> (\u06a9\u0633\u06cc \u06a9\u06cc \u0628\u0627\u062a \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0627\u06cc\u06a9 \u0645\u062e\u062a\u0635\u0631 WAV \u0641\u0627\u0626\u0644) \u0645\u062a\u0646 \u06a9\u06d2 \u0633\u0627\u062a\u06be\u06d4 \u0679\u0631\u0627\u0646\u0633\u0688\u06cc\u0648\u0633\u0631 \u062d\u0648\u0627\u0644\u06c1 \u0622\u0688\u06cc\u0648 \u06a9\u06cc \u0635\u0648\u062a\u06cc \u062e\u0635\u0648\u0635\u06cc\u0627\u062a \u06a9\u0627 \u062a\u062c\u0632\u06cc\u06c1 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0627\u0646 \u062e\u0635\u0648\u0635\u06cc\u0627\u062a \u06a9\u06cc \u0628\u0646\u06cc\u0627\u062f \u067e\u0631 \u06a9\u0644\u0648\u0646 \u0622\u0648\u0627\u0632 \u062a\u06cc\u0627\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h3 id=\"heading-2-the-supertonic-engine\">2. \u0633\u067e\u0631\u0633\u0648\u0646\u06a9 \u0627\u0646\u062c\u0646<\/h3>\n<p>Supertonic \u0627\u06cc\u06a9 \u0628\u0627\u0644\u06a9\u0644 \u0645\u062e\u062a\u0644\u0641 \u0646\u0642\u0637\u06c1 \u0646\u0638\u0631 \u0644\u06cc\u062a\u0627 \u06c1\u06d2. <strong>\u0628\u0627\u0632\u06cc \u067e\u0631 \u0645\u0628\u0646\u06cc \u0627\u0648\u06cc\u06a9\u062a \u0634\u0648\u0631 \u06a9\u0648 \u06c1\u0679\u0627\u0646\u0627<\/strong> \u2014 \u0648\u06c1\u06cc \u0628\u0646\u06cc\u0627\u062f\u06cc \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631 \u062c\u0648 AI \u0627\u0645\u06cc\u062c \u062c\u0646\u0631\u06cc\u0679\u0631\u0632 \u0645\u06cc\u06ba \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06c1\u0648\u062a\u0627 \u06c1\u06d2 \u062c\u06cc\u0633\u06d2 Stable Diffusion\u060c \u0644\u06cc\u06a9\u0646 \u0627\u0633 \u06a9\u0627 \u0627\u0637\u0644\u0627\u0642 \u0622\u0688\u06cc\u0648 \u067e\u0631 \u06c1\u0648\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u06cc\u06c1 \u062e\u0627\u0644\u0635 \u0688\u06cc\u062c\u06cc\u0679\u0644 \u0634\u0648\u0631 \u0633\u06d2 \u0634\u0631\u0648\u0639 \u06c1\u0648\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0645\u062a\u0646 \u06a9\u06d2 \u0627\u0634\u0627\u0631\u06d2 \u06a9\u06cc \u0628\u0646\u06cc\u0627\u062f \u067e\u0631 \u0627\u0633\u06d2 44.1kHz \u067e\u0631 \u0627\u06cc\u06a9 \u0627\u0639\u0644\u06cc \u0645\u062e\u0644\u0635 \u0627\u0633\u067e\u06cc\u0686 \u0648\u06cc\u0648\u0641\u0627\u0631\u0645 \u0645\u06cc\u06ba \u0628\u0627\u0631 \u0628\u0627\u0631 \u0628\u06c1\u062a\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0633\u067e\u0631\u0679\u0648\u0646\u06a9 \u0627\u0633\u067e\u0644\u0679 \u0645\u0627\u0688\u0644 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2 \u0648\u0627\u062d\u062f \u0645\u062a\u062d\u062f GGUF \u0641\u0627\u0626\u0644 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0645\u062a\u062d\u0631\u06a9 \u0622\u0648\u0627\u0632 \u06a9\u06cc \u0646\u0642\u0644 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2\u060c \u06c1\u0645 \u0627\u0646\u062a\u06c1\u0627\u0626\u06cc \u0628\u06c1\u062a\u0631\u060c \u067e\u06c1\u0644\u06d2 \u0633\u06d2 \u062a\u0631\u0628\u06cc\u062a \u06cc\u0627\u0641\u062a\u06c1 \u0622\u0648\u0627\u0632 \u06a9\u06d2 \u0627\u0646\u062f\u0627\u0632 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u062c\u06cc\u0633\u06d2 <code>voice: \"F1\"<\/code> \u06cc\u0627 <code>voice: \"M1\"<\/code>) \u0628\u0631\u0627\u06c1 \u0631\u0627\u0633\u062a \u0645\u0627\u0688\u0644 \u0645\u06cc\u06ba \u0633\u06cc\u0646\u06a9\u0627 \u06c1\u0648\u0627 \u06c1\u06d2\u06d4 \u062c\u0628 \u0645\u062a\u062d\u0631\u06a9 \u0646\u0642\u0644 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u0646\u06c1\u06cc\u06ba \u06c1\u0648\u062a\u06cc \u06c1\u06d2 \u062a\u0648 \u06cc\u06c1 \u06a9\u0631\u0633\u0679\u0644 \u0635\u0627\u0641\u060c \u0627\u0633\u0679\u0648\u0688\u06cc\u0648 \u06a9\u06d2 \u0645\u0639\u06cc\u0627\u0631 \u06a9\u06cc \u062a\u0642\u0631\u06cc\u0631 \u067e\u06cc\u062f\u0627 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u0646\u062a\u06c1\u0627\u0626\u06cc \u0645\u0648\u062b\u0631 \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0627\u0633 \u0679\u06cc\u0648\u0679\u0648\u0631\u06cc\u0644 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06c1\u0645 Supertonic \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u06cc\u06ba \u06af\u06d2\u06d4 \u06cc\u06c1 \u0628\u0627\u06a9\u0633 \u0633\u06d2 \u0628\u0627\u06c1\u0631 \u0634\u0627\u0646\u062f\u0627\u0631 \u0646\u062a\u0627\u0626\u062c \u0641\u0631\u0627\u06c1\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0645\u062a\u0639\u062f\u062f \u0633\u0627\u062a\u06be\u06cc \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0644\u0648\u0688 \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc \u0633\u06d2 \u0628\u0686\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h2 id=\"heading-the-inference-pipeline\">\u0627\u0646\u0641\u0631\u0646\u0633 \u067e\u0627\u0626\u067e \u0644\u0627\u0626\u0646<\/h2>\n<p>\u06cc\u06c1 \u062f\u06cc\u06a9\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u06c1 \u0622\u067e \u06a9\u0627 \u06a9\u0648\u0688 \u0628\u06cc\u0633 \u0627\u0646 \u0627\u0646\u062c\u0646\u0648\u06ba \u06a9\u06d2 \u0633\u0627\u062a\u06be \u06a9\u06cc\u0633\u06d2 \u062a\u0639\u0627\u0645\u0644 \u06a9\u0631 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u060c \u0627\u067e\u0646\u06d2 \u0641\u0648\u0646 \u06a9\u06cc \u0645\u06cc\u0645\u0648\u0631\u06cc \u0645\u06cc\u06ba \u0627\u06cc\u06a9 \u0648\u0631\u0686\u0648\u0626\u0644 \u0631\u06cc\u06a9\u0627\u0631\u0688\u0646\u06af \u0627\u0633\u0679\u0648\u0688\u06cc\u0648 \u0686\u0644\u0627\u0646\u06d2 \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0645\u0642\u0627\u0645\u06cc \u0679\u06cc\u06a9\u0633\u0679 \u0679\u0648 \u0627\u0633\u067e\u06cc\u0686 \u06a9\u06d2 \u0628\u0627\u0631\u06d2 \u0645\u06cc\u06ba \u0633\u0648\u0686\u06cc\u06ba\u06d4<\/p>\n<ol>\n<li>\n<p><strong>\u0627\u062f\u0627\u06a9\u0627\u0631\u0648\u06ba \u06a9\u06cc \u062e\u062f\u0645\u0627\u062a \u062d\u0627\u0635\u0644 \u06a9\u0631\u0646\u0627 (\u0644\u0648\u0688\u0646\u06af \u0645\u0627\u0688\u0644):<\/strong> \u06a9\u0645\u067e\u0631\u06cc\u0633\u0688 GGUF \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0628\u0631\u0627\u06c1 \u0631\u0627\u0633\u062a \u0627\u067e\u0646\u06d2 \u0622\u0644\u06d2 \u06a9\u06cc RAM \u06cc\u0627 GPU VRAM \u067e\u0631 \u0646\u0642\u0634\u06c1 \u0628\u0646\u0627\u0626\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u067e\u0627\u0633 \u0627\u0633\u06a9\u0631\u067e\u0679 (\u0679\u06cc\u06a9\u0633\u0679 \u0627\u0646 \u067e\u0679):<\/strong> \u0644\u0648\u0688 \u0634\u062f\u06c1 \u0627\u0646\u062c\u0646 \u06a9\u0648 \u0633\u0627\u062f\u06c1 \u0645\u062a\u0646 \u0645\u0646\u062a\u0642\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u06a9\u0627\u0631\u06a9\u0631\u062f\u06af\u06cc (\u062a\u062e\u0645\u06cc\u0646\u06c1):<\/strong> \u0627\u0646\u062c\u0646 \u0645\u062a\u0646 \u067e\u0691\u06be\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0631\u06cc\u0627\u0636\u06cc \u0633\u06d2 \u0622\u0648\u0627\u0632 \u06a9\u06cc \u0644\u06c1\u0631\u0648\u06ba \u06a9\u06cc \u067e\u06cc\u0634 \u06af\u0648\u0626\u06cc \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0627\u06c1\u0645 \u0637\u0648\u0631 \u067e\u0631\u060c AI \u062a\u06cc\u0627\u0631 \u0634\u062f\u06c1 \u0622\u0688\u06cc\u0648 \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u0628\u0631\u0622\u0645\u062f \u0646\u06c1\u06cc\u06ba \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0627\u0633 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2\u060c \u06cc\u06c1 \u062e\u0627\u0645 \u0688\u06cc\u062c\u06cc\u0679\u0644 \u0622\u0648\u0627\u0632 \u06a9\u06cc \u0644\u06c1\u0631\u0648\u06ba \u06a9\u0648 \u0646\u06a9\u0627\u0644\u062a\u0627 \u06c1\u06d2 \u062c\u0633\u06d2 PCM \u0646\u0645\u0648\u0646\u06d2 \u06a9\u06c1\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0622\u0688\u06cc\u0648 \u067e\u06cc\u06a9\u06cc\u062c\u0646\u06af:<\/strong> \u0686\u0648\u0646\u06a9\u06c1 \u062e\u0627\u0645 \u0646\u0645\u0628\u0631 \u06a9\u06cc \u0641\u06c1\u0631\u0633\u062a \u0645\u0639\u06cc\u0627\u0631\u06cc \u0645\u06cc\u0688\u06cc\u0627 \u067e\u0644\u06cc\u0626\u0631\u0632 \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0646\u06c1\u06cc\u06ba \u0686\u0644\u0627\u0626\u06cc \u062c\u0627 \u0633\u06a9\u062a\u06cc\u060c \u0627\u0633 \u0644\u06cc\u06d2 PCM \u0688\u06cc\u0679\u0627 \u06a9\u0648 \u062f\u0633\u062a\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0645\u0639\u06cc\u0627\u0631\u06cc WAV \u06c1\u06cc\u0688\u0631 \u0645\u06cc\u06ba \u0644\u067e\u06cc\u0679\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0627\u0633\u0679\u0648\u0688\u06cc\u0648 \u06a9\u0648 \u0628\u0646\u062f \u06a9\u0631\u06cc\u06ba (\u0627\u0646 \u0644\u0648\u0688 \u06a9\u0631\u06cc\u06ba):<\/strong> \u0627\u0633\u067e\u06cc\u0686 \u0633\u0646\u062a\u06be\u06cc\u0633\u0632 \u0645\u06cc\u0645\u0648\u0631\u06cc \u06a9\u06cc \u06af\u06c1\u0631\u06cc \u06c1\u0648\u062a\u06cc \u06c1\u06d2 \u0627\u0648\u0631 \u0627\u06cc\u06a9 \u0645\u0633\u062a\u0642\u0644 \u062d\u0627\u0644\u062a \u06a9\u0648 \u0628\u0631\u0642\u0631\u0627\u0631 \u0631\u06a9\u06be\u062a\u06cc \u06c1\u06d2\u060c \u0644\u06c1\u0630\u0627 \u0648\u0633\u0627\u0626\u0644 \u06a9\u0648 \u062e\u0627\u0644\u06cc \u06a9\u0631\u0646\u06d2 \u0627\u0648\u0631 \u0633\u06cc\u0627\u0642 \u0648 \u0633\u0628\u0627\u0642 \u06a9\u0648 \u0641\u0644\u0634 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0645\u0627\u0688\u0644\u0632 \u06a9\u0648 RAM \u0633\u06d2 \u0635\u0627\u0641 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<\/ol>\n<h2 id=\"heading-environment-and-dependency-config\">\u0645\u0627\u062d\u0648\u0644 \u0627\u0648\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u06a9\u0648 \u062a\u0631\u062a\u06cc\u0628 \u062f\u06cc\u06ba\u06d4<\/h2>\n<p>\u0627\u0633 \u0633\u06d2 \u067e\u06c1\u0644\u06d2 \u06a9\u06c1 \u06c1\u0645 \u06a9\u0648\u0688\u0628\u06cc\u0633 \u0645\u06cc\u06ba \u062c\u0627\u0626\u06cc\u06ba\u060c \u0627\u06af\u0631 \u0622\u067e \u06a9\u0627 \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 pnpm \u067e\u06cc\u06a9\u06cc\u062c \u0645\u06cc\u0646\u06cc\u062c\u0631 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u062a\u0648 \u0630\u06c1\u0646 \u0645\u06cc\u06ba \u0631\u06a9\u06be\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06a9\u0686\u06be \u0627\u06c1\u0645 \u0627\u0646\u062d\u0635\u0627\u0631\u06cc \u062a\u0631\u062a\u06cc\u0628\u0627\u062a \u0645\u0648\u062c\u0648\u062f \u06c1\u06cc\u06ba\u06d4<\/p>\n<p>\u0686\u0648\u0646\u06a9\u06c1 QVAC \u067e\u0644\u06af \u0627\u0646 \u0639\u0628\u0648\u0631\u06cc \u0628\u0646\u06cc\u0627\u062f\u06cc \u06c1\u0645 \u0645\u0631\u062a\u0628\u06c1 \u0627\u0646\u062d\u0635\u0627\u0631 \u067e\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c pnpm \u062c\u06cc\u0633\u06d2 \u0633\u062e\u062a \u067e\u06cc\u06a9\u06cc\u062c \u0645\u06cc\u0646\u06cc\u062c\u0631 \u0627\u0646 \u0627\u0646\u062d\u0635\u0627\u0631\u0648\u06ba \u06a9\u0648 \u067e\u0648\u0634\u06cc\u062f\u06c1 \u0627\u0646\u062f\u0631 \u0628\u0646\u062f \u06a9\u0631 \u062f\u06cc\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 <code>.pnpm<\/code> \u0630\u06cc\u0644\u06cc \u0641\u0648\u0644\u0688\u0631\u0632\u06d4<\/p>\n<p>QVAC \u0645\u0642\u0627\u0645\u06cc \u0628\u0646\u0688\u0644\u0631 \u06a9\u0648 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 (<code>bare-pack<\/code>) \u062a\u0639\u0645\u06cc\u0631\u0627\u062a\u06cc \u0648\u0642\u062a \u0627\u0648\u0631 \u0648\u0631\u06a9\u0631 \u067e\u0644\u06af \u0627\u0646 \u06a9\u06cc \u0635\u062d\u06cc\u062d \u062a\u0634\u0631\u06cc\u062d \u06a9\u0631 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u06d4 <code>.npmrc<\/code> \u067e\u0631\u0648\u062c\u06cc\u06a9\u0679 \u06a9\u06cc \u062c\u0691 \u0645\u06cc\u06ba \u0641\u0627\u0626\u0644\u06cc\u06ba:<\/p>\n<pre><code class=\"language-ini\">shamefully-hoist=true\n<\/code><\/pre>\n<p>\u0627\u06c1\u0645: \u0627\u0633 \u0641\u0627\u0626\u0644 \u06a9\u0648 \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0628\u0639\u062f\u060c \u0622\u067e \u06a9\u0648 \u0627\u0646\u062d\u0635\u0627\u0631 \u06a9\u06cc \u0627\u06cc\u06a9 \u0646\u0626\u06cc \u0627\u0646\u0633\u0679\u0627\u0644 \u0686\u0644\u0627\u0646\u06d2 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a \u06c1\u0648\u06af\u06cc (<code>pnpm install<\/code>)\u06d4 \u06cc\u06c1 \u0631\u0627\u0633\u062a\u06d2 \u06a9\u06cc \u0641\u0644\u06cc\u0679 \u062a\u0631\u062a\u06cc\u0628 \u06a9\u0648 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2\u06d4 <code>node_modules<\/code> \u0627\u0633 \u0628\u0627\u062a \u06a9\u0648 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u0626\u06cc\u06ba \u06a9\u06c1 \u0645\u0642\u0627\u0645\u06cc \u0622\u067e\u0631\u06cc\u0634\u0646\u0632 \u06a9\u06d2 \u062f\u0648\u0631\u0627\u0646 \u062a\u0645\u0627\u0645 QVAC \u0633\u06d2 \u0645\u062a\u0639\u0644\u0642\u06c1 \u0645\u062f\u062f\u06af\u0627\u0631 \u067e\u06cc\u06a9\u062c\u0632 \u06a9\u0648 \u062f\u0631\u0633\u062a \u0637\u0631\u06cc\u0642\u06d2 \u0633\u06d2 \u062d\u0644 \u06a9\u06cc\u0627 \u06af\u06cc\u0627 \u06c1\u06d2\u06d4 <code>npx expo prebuild<\/code> \u062a\u0627\u0644\u06cc\u0641 \u06a9\u0627 \u0645\u0631\u062d\u0644\u06c1\u06d4<\/p>\n<h2 id=\"heading-the-audio-utility-packaging\">\u0622\u0688\u06cc\u0648 \u06cc\u0648\u0679\u06cc\u0644\u06cc\u0679\u06cc \u067e\u06cc\u06a9\u06cc\u062c\u0646\u06af<\/h2>\n<p>\u0686\u0648\u0646\u06a9\u06c1 QVAC \u0627\u06cc\u06a9 \u062e\u0627\u0645 PCM \u0633\u0631\u0646\u06cc \u06a9\u0648 \u0622\u0624\u0679 \u067e\u0679 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u0622\u067e \u06a9\u0648 \u067e\u06c1\u0644\u06d2 \u0645\u06cc\u0645\u0648\u0631\u06cc \u0645\u06cc\u06ba \u0627\u06cc\u06a9 \u062f\u0631\u0633\u062a WAV \u0641\u0627\u0626\u0644 \u0628\u0646\u0627\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2 \u0627\u0648\u0631 \u0627\u0633\u06d2 \u0645\u0642\u0627\u0645\u06cc \u0622\u0688\u06cc\u0648 \u067e\u0644\u06cc\u0626\u0631 \u0645\u06cc\u06ba \u0686\u0644\u0627\u0646\u06d2 \u0633\u06d2 \u067e\u06c1\u0644\u06d2 \u0688\u06cc\u0648\u0627\u0626\u0633 \u06a9\u06d2 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u0645\u06cc\u06ba \u0644\u06a9\u06be\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2\u06d4<\/p>\n<p>\u0627\u0633 \u06a9\u0648 \u062d\u0627\u0635\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0622\u0626\u06cc\u06d2 \u0627\u0646\u062f\u0631 \u0627\u06cc\u06a9 \u06cc\u0648\u0679\u06cc\u0644\u06cc\u0679\u06cc \u0645\u0627\u0688\u06cc\u0648\u0644 \u0628\u0646\u0627\u0626\u06cc\u06ba: <code>src\/lib\/utils.ts<\/code> \u0645\u0637\u0644\u0648\u0628\u06c1 WAV \u06c1\u06cc\u0688\u0631 \u0628\u0646\u0627\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u062e\u0627\u0645 \u0622\u0688\u06cc\u0648 \u0646\u0645\u0648\u0646\u0648\u06ba \u06a9\u0648 \u0628\u0627\u0626\u0646\u0631\u06cc \u0628\u0641\u0631 \u0645\u06cc\u06ba \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0631\u06cc\u06ba \u0627\u0648\u0631 \u0627\u0633\u06d2 \u0645\u0642\u0627\u0645\u06cc \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u0645\u06cc\u06ba \u0644\u06a9\u06be\u06cc\u06ba\u06d4<\/p>\n<pre><code class=\"language-typescript\">import { Buffer } from \"buffer\";\nimport * as FileSystem from \"expo-file-system\/legacy\";\n\n\/**\n * Creates a WAV header for 16-bit PCM audio\n *\/\nexport function createWavHeader(\n  dataLength: number,\n  sampleRate: number,\n): Buffer {\n  const buffer = Buffer.alloc(44);\n  const channels = 1; \/\/ Mono\n  const byteRate = sampleRate * channels * 2; \/\/ 16-bit audio\n  const blockAlign = channels * 2;\n\n  buffer.write(\"RIFF\", 0);\n  buffer.writeUInt32LE(36 + dataLength, 4);\n  buffer.write(\"WAVE\", 8);\n  buffer.write(\"fmt \", 12);\n  buffer.writeUInt32LE(16, 16); \/\/ Subchunk1Size\n  buffer.writeUInt16LE(1, 20); \/\/ AudioFormat (PCM)\n  buffer.writeUInt16LE(channels, 22);\n  buffer.writeUInt32LE(sampleRate, 24);\n  buffer.writeUInt32LE(byteRate, 28);\n  buffer.writeUInt16LE(blockAlign, 32);\n  buffer.writeUInt16LE(16, 34); \/\/ BitsPerSample\n  buffer.write(\"data\", 36);\n  buffer.writeUInt32LE(dataLength, 40);\n\n  return buffer;\n}\n\n\/**\n * Converts the raw Int16Array samples from QVAC to a binary Buffer\n *\/\nexport function int16ArrayToBuffer(int16Array: Int16Array): Buffer {\n  const buffer = Buffer.alloc(int16Array.length * 2);\n  for (let i = 0; i < int16Array.length; i++) {\n    buffer.writeInt16LE(int16Array[i] ?? 0, i * 2);\n  }\n  return buffer;\n}\n\n\/**\n * Main function to package and save the file to local mobile storage\n *\/\nexport async function saveAudioToDevice(\n  audioBuffer: Int16Array,\n  sampleRate: number,\n): Promise<string> {\n  try {\n    const audioData = int16ArrayToBuffer(audioBuffer);\n    const wavHeader = createWavHeader(audioData.length, sampleRate);\n    const finalWavBuffer = Buffer.concat([wavHeader, audioData]);\n    const base64Data = finalWavBuffer.toString(\"base64\");\n\n    const filename = `tts-speech-${Date.now()}.wav`;\n    const fileUri = `\\({FileSystem.documentDirectory}\\){filename}`;\n\n    await FileSystem.writeAsStringAsync(fileUri, base64Data, {\n      encoding: FileSystem.EncodingType.Base64,\n    });\n\n    console.log(`&#x2705; File saved locally at: ${fileUri}`);\n    return fileUri;\n  } catch (error) {\n    console.error(\"&#x274c; Failed to save audio file locally:\", error);\n    throw error;\n  }\n}\n<\/string><\/code><\/pre>\n<h2 id=\"heading-complete-implementation\">\u0645\u06a9\u0645\u0644 \u0646\u0641\u0627\u0630<\/h2>\n<p>\u0622\u0626\u06cc\u06d2 \u0633\u0628 \u06a9\u0648 \u0633\u0627\u062a\u06be \u0644\u06d2 \u06a9\u0631 \u0622\u0626\u06cc\u06ba\u06d4 \u06c1\u0645 \u0635\u0627\u0631\u0641 \u06a9\u0627 \u0627\u0646 \u067e\u0679 \u0648\u0635\u0648\u0644 \u06a9\u0631\u0646\u06d2\u060c \u0633\u067e\u0631\u0679\u0648\u0646\u06a9 \u0627\u0646\u062c\u0646 \u06a9\u06d2 \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u0627\u0648\u0631 \u0644\u0648\u0688\u0646\u06af \u06a9\u06cc \u0635\u0648\u0631\u062a\u062d\u0627\u0644 \u06a9\u0648 \u0645\u0646\u0638\u0645 \u06a9\u0631\u0646\u06d2\u060c \u0686\u0644\u0646\u06d2 \u06a9\u06d2 \u0642\u0627\u0628\u0644 \u0645\u0642\u0627\u0645\u06cc \u0641\u0627\u0626\u0644\u0648\u06ba \u0645\u06cc\u06ba \u067e\u06cc\u062f\u0627 \u06c1\u0648\u0646\u06d2 \u0648\u0627\u0644\u06cc \u062e\u0627\u0645 \u0644\u06c1\u0631\u0648\u06ba \u06a9\u0648 \u067e\u06cc\u06a9 \u06a9\u0631\u0646\u06d2\u060c \u0627\u0648\u0631 \u0627\u06cc\u06a9 \u0627\u0646\u0679\u0631\u0627\u06cc\u06a9\u0679\u0648 \u0648\u06cc\u0698\u0648\u0644 \u0648\u06cc\u0648\u0641\u0627\u0631\u0645 \u067e\u0644\u06cc\u0626\u0631 \u067e\u06cc\u0634 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u06a9 \u0627\u0646\u0679\u0631\u0641\u06cc\u0633 \u0646\u0627\u0641\u0630 \u06a9\u0631\u06cc\u06ba \u06af\u06d2\u06d4<\/p>\n<p>\u062d\u0635\u06c1 \u0644\u06cc\u0646\u06d2 \u0648\u0627\u0644\u06cc \u0627\u06cc\u067e \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0648 \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0631\u0646\u0627 <code>src\/app\/index.tsx<\/code> \u0645\u0646\u062f\u0631\u062c\u06c1 \u0630\u06cc\u0644 \u0646\u0641\u0627\u0630 \u06a9\u06d2 \u0633\u0627\u062a\u06be:<\/p>\n<pre><code class=\"language-tsx\">import { useState, useEffect } from \"react\";\nimport {\n  TextInput,\n  KeyboardAvoidingView,\n  Platform,\n  ScrollView,\n} from \"react-native\";\nimport {\n  loadModel,\n  unloadModel,\n  textToSpeech,\n  downloadAsset,\n  TTS_EN_SUPERTONIC_Q8_0,\n  getModelInfo,\n  type ModelProgressUpdate,\n} from \"@qvac\/sdk\";\nimport { saveAudioToDevice } from \"@\/lib\/utils\";\nimport { TtsModelLoader } from \"@\/components\/tts-model-loader\";\nimport { AudioPlayer } from \"@\/components\/audio-player\";\nimport {\n  Card,\n  CardContent,\n  CardDescription,\n  CardHeader,\n  CardTitle,\n} from \"@\/components\/ui\/card\";\nimport { Button } from \"@\/components\/ui\/button\";\nimport { Text } from \"@\/components\/ui\/text\";\n\nconst SUPERTONIC_SAMPLE_RATE = 44100;\n\n\/\/ Global reference for our model ID\nlet globalModelId: string | null = null;\n\ntype TtsStatus =\n  | { phase: \"idle\" }\n  | { phase: \"synthesizing\" }\n  | { phase: \"done\"; audioUri: string }\n  | { phase: \"error\"; message: string };\n\nexport default function TextToVoiceScreen() {\n  const [text, setText] = useState(\"\");\n  const [status, setStatus] = useState<ttsstatus>({ phase: \"idle\" });\n\n  const [isModelLoaded, setIsModelLoaded] = useState(!!globalModelId);\n  const [isDownloading, setIsDownloading] = useState(false);\n  const [downloadProgress, setDownloadProgress] = useState(0);\n\n  const isBusy = status.phase === \"synthesizing\";\n\n  useEffect(() => {\n    async function checkAndAutoLoad() {\n      if (globalModelId) return;\n      try {\n        const info = await getModelInfo({ name: TTS_EN_SUPERTONIC_Q8_0.name });\n        if (info.isCached) {\n          setIsDownloading(true);\n          setDownloadProgress(1);\n\n          globalModelId = await loadModel({\n            modelSrc: TTS_EN_SUPERTONIC_Q8_0,\n            modelConfig: {\n              ttsEngine: \"supertonic\",\n              language: \"en\",\n              voice: \"F1\",\n              ttsSpeed: 1.05,\n              ttsNumInferenceSteps: 5,\n            },\n          });\n\n          setIsModelLoaded(true);\n          setIsDownloading(false);\n        }\n      } catch (err: unknown) {\n        console.warn(\"Failed to auto-load cached model on mount:\", err);\n        setIsDownloading(false);\n      }\n    }\n    checkAndAutoLoad();\n  }, []);\n\n  const handleDownloadModel = async () => {\n    if (isDownloading || isModelLoaded) return;\n\n    try {\n      setIsDownloading(true);\n      setDownloadProgress(0);\n\n      await downloadAsset({\n        assetSrc: TTS_EN_SUPERTONIC_Q8_0,\n        onProgress: (p: ModelProgressUpdate) => {\n          setDownloadProgress(p.percentage \/ 100);\n        },\n      });\n\n      setDownloadProgress(1);\n\n      globalModelId = await loadModel({\n        modelSrc: TTS_EN_SUPERTONIC_Q8_0,\n        modelConfig: {\n          ttsEngine: \"supertonic\",\n          language: \"en\",\n          voice: \"F1\",\n          ttsSpeed: 1.05,\n          ttsNumInferenceSteps: 5,\n        },\n      });\n\n      setIsModelLoaded(true);\n      setIsDownloading(false);\n    } catch (err: unknown) {\n      console.error(\"Failed to download or load model:\", err);\n      setIsDownloading(false);\n      setStatus({\n        phase: \"error\",\n        message: err instanceof Error ? err.message : String(err),\n      });\n      setIsModelLoaded(false);\n    }\n  };\n\n  const handleSubmit = async () => {\n    if (!text.trim() || isBusy || !globalModelId) return;\n\n    try {\n      setStatus({ phase: \"synthesizing\" });\n\n      \/\/ 1. Unload and reload the model to reset its state and clear the KV cache.\n      if (globalModelId) {\n        await unloadModel({ modelId: globalModelId });\n      }\n      globalModelId = await loadModel({\n        modelSrc: TTS_EN_SUPERTONIC_Q8_0,\n        modelConfig: {\n          ttsEngine: \"supertonic\",\n          language: \"en\",\n          voice: \"F1\",\n          ttsSpeed: 1.05,\n          ttsNumInferenceSteps: 5,\n        },\n      });\n\n      \/\/ 2. Synthesize text to raw PCM samples\n      const result = textToSpeech({\n        modelId: globalModelId,\n        text: text.trim(),\n        inputType: \"text\",\n        stream: false,\n      });\n\n      const audioBuffer = await result.buffer;\n\n      \/\/ 3. Package and save WAV file using our local util\n      const samplesInt16 = new Int16Array(audioBuffer);\n      const wavUri = await saveAudioToDevice(\n        samplesInt16,\n        SUPERTONIC_SAMPLE_RATE,\n      );\n\n      \/\/ 4. Show player\n      setStatus({ phase: \"done\", audioUri: wavUri });\n    } catch (err: unknown) {\n      console.error(\"TTS error:\", err);\n      const msg = err instanceof Error ? err.message : String(err);\n      setStatus({ phase: \"error\", message: msg });\n    }\n  };\n\n  const buttonLabel =\n    status.phase === \"synthesizing\" ? \"Synthesizing\u2026\" : \"Synthesize Speech\";\n\n  if (!isModelLoaded) {\n    return (\n      <ttsmodelloader ondownload=\"{handleDownloadModel}\" isdownloading=\"{isDownloading}\" progress=\"{downloadProgress}\"\/>\n    );\n  }\n\n  return (\n    <keyboardavoidingview behavior=\"{Platform.OS\" :=\"\" classname=\"flex-1 bg-black\">\n      <scrollview contentcontainerclassname=\"flex-grow p-6  justify-center\">\n        <card classname=\"border border-border bg-card max-w-md w-full mx-auto\">\n          <cardheader>\n            <cardtitle variant=\"h3\" classname=\"text-white text-center\">\n              Text to Voice\n            <\/cardtitle>\n            <carddescription classname=\"text-center mt-1\">\n              Type or paste your content to synthesize speech\n            <\/carddescription>\n          <\/cardheader>\n\n          <cardcontent classname=\"gap-6\">\n            <textinput classname=\"bg-muted text-white border border-border rounded-lg p-4 h-48 text-base leading-6\" multiline=\"\" numberoflines=\"{8}\" placeholder=\"Type your message here...\" placeholdertextcolor=\"#666\" value=\"{text}\" onchangetext=\"{setText}\" style=\"{{\" textalignvertical:=\"\" editable=\"{!isBusy}\"\/>\n\n            {status.phase === \"error\" && (\n              <text classname=\"text-destructive text-sm text-center\">\n                {status.message}\n              <\/text>\n            )}\n\n            {status.phase === \"done\" && <audioplayer uri=\"{status.audioUri}\"\/>}\n\n            <button onpress=\"{handleSubmit}\" classname=\"w-full h-12 rounded-xl\" disabled=\"{!text.trim()\" isbusy=\"\">\n              <text classname=\"font-semibold text-lg\">{buttonLabel}<\/text>\n            <\/button>\n          <\/cardcontent>\n        <\/card>\n      <\/scrollview>\n    <\/keyboardavoidingview>\n  );\n}\n<\/ttsstatus><\/code><\/pre>\n<h3 id=\"heading-codebase-breakdown\">\u06a9\u0648\u0688 \u0628\u06cc\u0633 \u062a\u062c\u0632\u06cc\u06c1<\/h3>\n<p>\u0622\u0626\u06cc\u06d2 \u0627\u0633 \u067e\u0631 \u0642\u0631\u06cc\u0628\u06cc \u0646\u0638\u0631 \u0688\u0627\u0644\u062a\u06d2 \u06c1\u06cc\u06ba \u06a9\u06c1 \u06cc\u06c1 \u0645\u0642\u0627\u0645\u06cc \u0679\u06cc\u06a9\u0633\u0679 \u0679\u0648 \u0627\u0633\u067e\u06cc\u0686 \u0639\u0645\u0644 \u062f\u0631\u0622\u0645\u062f \u06a9\u0633 \u0637\u0631\u062d \u0628\u0646\u06cc\u0627\u062f\u06cc \u0645\u0627\u0688\u0644 \u0644\u0627\u0626\u0641 \u0633\u0627\u0626\u06cc\u06a9\u0644 \u06a9\u0648 \u0645\u0646\u0638\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u062e\u0627\u0645 \u0622\u0688\u06cc\u0648 \u0635\u0641\u0648\u06ba \u06a9\u0648 \u06c1\u06cc\u0646\u0688\u0644 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<h4 id=\"heading-1-managing-the-native-lifecycle\">1. \u0645\u0642\u0627\u0645\u06cc \u0644\u0627\u0626\u0641 \u0633\u0627\u0626\u06cc\u06a9\u0644 \u0645\u06cc\u0646\u062c\u0645\u0646\u0679<\/h4>\n<p>\u062a\u0642\u0631\u06cc\u0631 \u06a9\u06cc \u062a\u0631\u06a9\u06cc\u0628 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0639\u0635\u0628\u06cc \u0646\u06cc\u0679 \u0648\u0631\u06a9 \u06a9\u06d2 \u0648\u0632\u0646 \u06a9\u0648 \u0644\u0648\u0688 \u06a9\u0631\u0646\u0627 \u06a9\u0645\u067e\u06cc\u0648\u0679\u06cc\u0634\u0646\u0644 \u0637\u0648\u0631 \u067e\u0631 \u0645\u06c1\u0646\u06af\u0627 \u06c1\u06d2\u06d4 \u0627\u06cc\u06a9 \u0645\u0627\u0688\u0644 \u06a9\u0648 \u0634\u0631\u0648\u0639 \u06a9\u0631\u062a\u06d2 \u0648\u0642\u062a\u060c QVAC \u0631\u0646 \u0679\u0627\u0626\u0645 \u06a9\u0648 \u0645\u0642\u0627\u0645\u06cc \u0688\u0633\u06a9 \u0633\u06d2 \u067e\u06cc\u0631\u0627\u0645\u06cc\u0679\u0631\u0632 \u06a9\u0648 \u067e\u0691\u06be\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2 \u0627\u0648\u0631 \u0641\u0639\u0627\u0644 \u0648\u0632\u0646 \u06a9\u0648 \u0688\u06cc\u0648\u0627\u0626\u0633 RAM \u0645\u06cc\u06ba \u06a9\u0627\u067e\u06cc \u06a9\u0631\u0646\u0627 \u0686\u0627\u06c1\u06cc\u06d2\u06d4<\/p>\n<p>\u0627\u0633 \u06a9\u0648 \u0645\u0624\u062b\u0631 \u0637\u0631\u06cc\u0642\u06d2 \u0633\u06d2 \u0633\u0646\u0628\u06be\u0627\u0644\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0645\u06cc\u06ba \u0646\u06d2 \u062c\u0632\u0648 \u06a9\u06d2 \u062f\u0627\u0626\u0631\u06c1 \u06a9\u0627\u0631 \u0633\u06d2 \u0628\u0627\u06c1\u0631 \u0627\u06cc\u06a9 \u062d\u0648\u0627\u0644\u06c1 \u0645\u062a\u063a\u06cc\u0631 \u06a9\u0627 \u0627\u0639\u0644\u0627\u0646 \u06a9\u06cc\u0627\u06d4<\/p>\n<pre><code class=\"language-typescript\">let globalModelId: string | null = null;\n<\/code><\/pre>\n<p>\u0627\u06af\u0631 <code>globalModelId<\/code> \u0686\u0648\u0646\u06a9\u06c1 \u06cc\u06c1 \u062c\u0632\u0648 \u062d\u0627\u0644\u062a \u0645\u06cc\u06ba \u0679\u0631\u06cc\u06a9 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u060c \u062c\u0628 \u0622\u067e \u0679\u06cc\u06a9\u0633\u0679 \u0679\u0648 \u0627\u0633\u067e\u06cc\u0686 \u0627\u0633\u06a9\u0631\u06cc\u0646 \u06a9\u0648 \u0686\u06be\u0648\u0691\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u062a\u0648 \u0631\u06cc\u0627\u0633\u062a \u0635\u0627\u0641 \u06c1\u0648\u062c\u0627\u062a\u06cc \u06c1\u06d2\u060c \u062c\u0633 \u06a9\u06cc \u0648\u062c\u06c1 \u0633\u06d2 \u0622\u067e \u06a9\u06cc \u0627\u06cc\u067e \u063a\u06cc\u0631 \u0636\u0631\u0648\u0631\u06cc \u0637\u0648\u0631 \u067e\u0631 \u062d\u0648\u0627\u0644\u06c1 \u062c\u0627\u062a \u06a9\u0648 \u062d\u0630\u0641 \u06a9\u0631\u062f\u06cc\u062a\u06cc \u06c1\u06d2\u06d4 ID \u06a9\u0648 \u0639\u0627\u0644\u0645\u06cc \u0633\u0637\u062d \u067e\u0631 \u0630\u062e\u06cc\u0631\u06c1 \u06a9\u0631\u0646\u06d2 \u0633\u06d2 \u0622\u067e ID \u06a9\u0648 \u0644\u06d2 \u0622\u0624\u0679 \u0633\u0648\u0626\u0686\u0632 \u0645\u06cc\u06ba \u0628\u0631\u0642\u0631\u0627\u0631 \u0631\u06a9\u06be \u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<h4 id=\"heading-2-flushing-the-kv-cache-unload-and-reload\">2. KV \u06a9\u06cc\u0634 \u0641\u0644\u0634: \u0627\u062a\u0627\u0631\u06cc\u06ba \u0627\u0648\u0631 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0644\u0648\u0688 \u06a9\u0631\u06cc\u06ba\u06d4<\/h4>\n<p>GGML \u0627\u0646\u062c\u0646 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0622\u0641 \u0644\u0627\u0626\u0646 \u062c\u0646\u0631\u06cc\u0634\u0646 \u06a9\u06d2 \u0633\u0628 \u0633\u06d2 \u0627\u06c1\u0645 \u067e\u06c1\u0644\u0648\u0624\u06ba \u0645\u06cc\u06ba \u0633\u06d2 \u0627\u06cc\u06a9 \u0631\u06cc\u0627\u0633\u062a\u06cc \u0627\u0646\u062a\u0638\u0627\u0645 \u06c1\u06d2\u06d4<\/p>\n<pre><code class=\"language-typescript\">\/\/ 1. Unload and reload the model to reset its state and clear the KV cache.\nif (globalModelId) {\n  await unloadModel({ modelId: globalModelId });\n}\n\nglobalModelId = await loadModel({ ... });\n<\/code><\/pre>\n<p>\u0627\u0646\u062a\u0628\u0627\u06c1 <strong>\u0633\u0645\u0639\u06cc \u0641\u0631\u06cc\u0628:<\/strong> \u06a9\u0633\u06cc \u0627\u06cc\u06a9 TTS \u0645\u0627\u0688\u0644 \u0645\u062b\u0627\u0644 \u0633\u06d2 \u062c\u0645\u0644\u06d2 \u06a9\u0648 \u062f\u0648\u0628\u0627\u0631\u06c1 \u062a\u0631\u062a\u06cc\u0628 \u062f\u06cc\u0626\u06d2 \u0628\u063a\u06cc\u0631 \u0645\u0633\u0644\u0633\u0644 \u062a\u0631\u06a9\u06cc\u0628 \u06a9\u0631\u0646\u06d2 \u0633\u06d2 \u0645\u0627\u0688\u0644 \u06a9\u06cc \u06a9\u0644\u06cc\u062f\u06cc \u0642\u062f\u0631 (KV) \u06a9\u06cc\u0634 \u0628\u06be\u0631 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4 \u06cc\u06c1 \u0646\u0626\u06d2 \u062c\u0645\u0644\u0648\u06ba \u06a9\u0648 \u067e\u0686\u06be\u0644\u06d2 \u062c\u0645\u0644\u06d2 \u06a9\u06d2 \u062a\u0633\u0644\u0633\u0644 \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u0645\u0627\u0646\u0646\u0627 \u0634\u0631\u0648\u0639 \u06a9\u0631 \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u060c \u062c\u0633 \u06a9\u06d2 \u0646\u062a\u06cc\u062c\u06d2 \u0645\u06cc\u06ba \u0634\u062f\u06cc\u062f \u0631\u0648\u0628\u0648\u0679\u06a9 \u062a\u062d\u0631\u06cc\u0641\u060c \u0628\u0627\u0632\u06af\u0634\u062a\u060c \u0627\u0648\u0631 \u062a\u06a9\u0631\u0627\u0631 \u062a\u0642\u0631\u06cc\u0631 \u06c1\u0648\u062a\u06cc \u06c1\u06d2\u06d4<\/p>\n<p>\u0648\u0627\u0636\u062d \u0637\u0648\u0631 \u067e\u0631 \u0627\u0633 \u06a9\u06d2 \u0633\u0627\u062a\u06be \u0645\u0627\u0688\u0644 \u06a9\u0648 \u062d\u0630\u0641 \u06a9\u0631\u06cc\u06ba: <code>unloadModel<\/code> \u0641\u0648\u0631\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0627\u06cc\u06a9 \u0646\u0626\u06cc \u0645\u062b\u0627\u0644 \u0628\u0648\u0679 \u06a9\u0631\u06cc\u06ba\u06d4 <code>loadModel<\/code>\u06c1\u0645 \u0627\u06cc\u06a9 \u0635\u0627\u0641 \u0627\u0648\u0631 \u062e\u0627\u0644\u06cc \u0633\u06cc\u0627\u0642 \u0648 \u0633\u0628\u0627\u0642 \u06a9\u06cc \u0648\u0646\u0688\u0648 \u06a9\u0648 \u0645\u062c\u0628\u0648\u0631 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0686\u0648\u0646\u06a9\u06c1 \u0645\u0627\u0688\u0644 \u067e\u06c1\u0644\u06d2 \u06c1\u06cc \u0688\u0627\u0624\u0646 \u0644\u0648\u0688 \u0627\u0648\u0631 \u0645\u06cc\u0645\u0648\u0631\u06cc \u0645\u06cc\u067e \u06c1\u0648 \u0686\u06a9\u0627 \u06c1\u06d2\u060c \u0627\u0633 \u0644\u06cc\u06d2 \u0645\u0627\u0688\u0644 \u06a9\u0648 \u0628\u0631\u0627\u06c1 \u0631\u0627\u0633\u062a \u0645\u0642\u0627\u0645\u06cc \u0641\u0644\u06cc\u0634 \u0627\u0633\u0679\u0648\u0631\u06cc\u062c \u0633\u06d2 \u062f\u0648\u0628\u0627\u0631\u06c1 \u0644\u0648\u0688 \u06a9\u0631\u0646\u0627 \u0628\u06c1\u062a \u062a\u06cc\u0632 \u06c1\u06d2\u06d4 \u0639\u0627\u0645 \u0637\u0648\u0631 \u067e\u0631 \u062c\u062f\u06cc\u062f \u0645\u0648\u0628\u0627\u0626\u0644 \u06c1\u0627\u0631\u0688\u0648\u06cc\u0626\u0631 \u067e\u0631 \u0627\u06cc\u06a9 \u0633\u06cc\u06a9\u0646\u0688 \u0633\u06d2 \u0628\u06be\u06cc \u06a9\u0645 \u0648\u0642\u062a \u0645\u06cc\u06ba \u0645\u06a9\u0645\u0644 \u06c1\u0648 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u060c \u06cc\u06c1 \u0635\u0627\u0631\u0641 \u06a9\u06d2 \u06c1\u0645\u0648\u0627\u0631 \u062a\u062c\u0631\u0628\u06d2 \u06a9\u0648 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u062a\u06d2 \u06c1\u0648\u0626\u06d2 \u0622\u0631\u0679\u0641\u06cc\u06a9\u0679 \u0633\u06d2 \u067e\u0627\u06a9 \u0622\u0688\u06cc\u0648 \u06a9\u0648 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0622\u067e\u0631\u06cc\u0679\u0646\u06af \u0633\u0633\u0679\u0645 \u0627\u0648\u0631 \u0628\u0644\u0679 \u0627\u0646 \u0645\u0648\u0628\u0627\u0626\u0644 \u0645\u06cc\u0688\u06cc\u0627 \u0688\u06cc\u06a9\u0648\u0688\u0631 \u062e\u0627\u0645 \u067e\u0644\u0633 \u06a9\u0648\u0688 \u0645\u0627\u0688\u06cc\u0648\u0644\u06cc\u0634\u0646 (PCM) \u0622\u0648\u0627\u0632 \u06a9\u06cc \u0644\u06c1\u0631\u0648\u06ba \u06a9\u0648 \u0628\u0631\u0627\u06c1 \u0631\u0627\u0633\u062a \u067e\u0627\u0631\u0633 \u0646\u06c1\u06cc\u06ba \u06a9\u0631\u0633\u06a9\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0627\u06cc\u06a9 \u062e\u0627\u0645 PCM \u0628\u0641\u0631 \u0635\u0631\u0641 \u0639\u062f\u062f\u06cc \u0646\u0642\u0627\u0637 \u06a9\u0627 \u0627\u06cc\u06a9 \u0633\u0644\u0633\u0644\u06c1 \u06c1\u06d2 \u062c\u0648 \u0622\u0688\u06cc\u0648 \u0644\u06c1\u0631 \u06a9\u06d2 \u0637\u0648\u0644 \u0648 \u0639\u0631\u0636 \u06a9\u06cc \u0646\u0645\u0627\u0626\u0646\u062f\u06af\u06cc \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u06c1\u0645 \u0645\u0639\u06cc\u0627\u0631\u06cc 44-\u0628\u0627\u0626\u0679 RIFF\/WAVE \u06c1\u06cc\u0688\u0631 \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u0648\u0626\u06d2 PCM \u0628\u0641\u0631 \u06a9\u0648 \u067e\u06c1\u0644\u06d2 \u0633\u06d2 \u0641\u0627\u0631\u0645\u06cc\u0679 \u06a9\u0631\u06a9\u06d2 \u0627\u0633 \u0645\u0633\u0626\u0644\u06d2 \u06a9\u0648 \u062d\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<p>\u06cc\u06c1 \u06c1\u06cc\u0688\u0631 \u067e\u0627\u0633\u067e\u0648\u0631\u0679 \u06a9\u06cc \u0648\u0636\u0627\u062d\u062a \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631 \u06a9\u0627\u0645 \u06a9\u0631\u062a\u0627 \u06c1\u06d2:<\/p>\n<ul>\n<li>\n<p><strong>\u0622\u0688\u06cc\u0648 \u0641\u0627\u0631\u0645\u06cc\u0679 (<\/strong><code>1<\/code><strong>)<\/strong>: \u0633\u06af\u0646\u0644 \u063a\u06cc\u0631 \u06a9\u0645\u067e\u0631\u06cc\u0633\u0688 \u0644\u06a9\u06cc\u0631\u06cc PCM\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0686\u06cc\u0646\u0644\u0632 \u06a9\u06cc \u062a\u0639\u062f\u0627\u062f (<\/strong><code>1<\/code><strong>)<\/strong>: \u0645\u0648\u0646\u0648 \u0622\u0688\u06cc\u0648\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>\u0646\u0645\u0648\u0646\u06c1 \u06a9\u06cc \u0634\u0631\u062d (<\/strong><code>44100<\/code><strong>)<\/strong>: \u0633\u067e\u0631\u0679\u0648\u0646\u06a9 \u067e\u0644\u06d2 \u0628\u06cc\u06a9 \u06a9\u06d2 \u0644\u06cc\u06d2 \u06af\u06be\u0691\u06cc \u06a9\u06cc \u0641\u0631\u06cc\u06a9\u0648\u0626\u0646\u0633\u06cc \u062f\u0631\u06a9\u0627\u0631 \u06c1\u06d2\u06d4<\/p>\n<\/li>\n<li>\n<p><strong>BitsPerSample(<\/strong><code>16<\/code><strong>)<\/strong>: 16 \u0628\u0679 \u0644\u0641\u0638 \u06a9\u06cc \u0644\u0645\u0628\u0627\u0626\u06cc (2 \u0628\u0627\u0626\u0679\u0633 \u0641\u06cc \u0646\u0645\u0648\u0646\u06c1)\u06d4<\/p>\n<\/li>\n<\/ul>\n<p>\u0641\u0627\u0626\u0644 \u0631\u0627\u0626\u06cc\u0679\u0633 \u06a9\u0648 \u0628\u06cc\u0633 64 \u0627\u0646\u06a9\u0648\u0688\u0646\u06af \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0628\u06be\u06cc \u067e\u0631\u0648\u0633\u06cc\u0633 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u060c \u0628\u0627\u0626\u0646\u0631\u06cc \u0688\u06cc\u0679\u0627 \u06a9\u0648 \u0635\u0627\u0641 \u06a9\u06cc\u06d2 \u0628\u063a\u06cc\u0631 React Native \u06a9\u06d2 JavaScript-Native \u067e\u0644 \u06a9\u0648 \u0645\u062d\u0641\u0648\u0638 \u0637\u0631\u06cc\u0642\u06d2 \u0633\u06d2 \u0639\u0628\u0648\u0631 \u06a9\u06cc\u0627 \u062c\u0627\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<pre><code class=\"language-typescript\">const base64Data = finalWavBuffer.toString(\"base64\");\nawait FileSystem.writeAsStringAsync(fileUri, base64Data, {\n  encoding: FileSystem.EncodingType.Base64,\n});\n<\/code><\/pre>\n<h4 id=\"heading-4-visual-waveform-player\">4. \u0628\u0635\u0631\u06cc \u0648\u06cc\u0648\u0641\u0627\u0631\u0645 \u067e\u0644\u06cc\u0626\u0631<\/h4>\n<p>\u067e\u0633 \u0645\u0646\u0638\u0631 \u0645\u06cc\u06ba \u0641\u0648\u0631\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0686\u0644\u0646\u06d2 \u0648\u0627\u0644\u06d2 \u067e\u06c1\u0644\u06d2 \u0633\u06d2 \u0637\u06d2 \u0634\u062f\u06c1 \u06c1\u06cc\u0688 \u0644\u06cc\u0633 \u0645\u0642\u0627\u0645\u06cc \u0622\u0688\u06cc\u0648 \u067e\u0644\u06cc\u0626\u0631 \u06a9\u0648 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u0646\u06d2 \u06a9\u06d2 \u0628\u062c\u0627\u0626\u06d2 \u0645\u0642\u0627\u0645\u06cc WAV \u0641\u0627\u0626\u0644 \u067e\u0627\u062a\u06be \u06a9\u0648 \u062d\u0633\u0628 \u0636\u0631\u0648\u0631\u062a \u0628\u0646\u0627\u0626\u06cc\u06ba <code><audioplayer\/><\/code> \u0627\u062c\u0632\u0627\u0621 \u06a9\u06cc \u0637\u0631\u0641 \u0633\u06d2 \u0637\u0627\u0642\u062a <code>@simform_solutions\/react-native-audio-waveform<\/code>.<\/p>\n<p>\u06cc\u06c1 \u0645\u0627\u0688\u06cc\u0648\u0644 \u0646\u0626\u06cc \u062a\u062e\u0644\u06cc\u0642 \u0634\u062f\u06c1 WAV \u0641\u0627\u0626\u0644\u0648\u06ba \u06a9\u0627 \u062a\u062c\u0632\u06cc\u06c1 \u06a9\u0631\u062a\u0627 \u06c1\u06d2 \u0627\u0648\u0631 \u0648\u0627\u0679\u0633 \u0627\u06cc\u067e \u0633\u06d2 \u0645\u062a\u0627\u062b\u0631 \u06c1\u0648 \u06a9\u0631 \u0686\u06cc\u06a9\u0646\u0627\u060c \u0627\u0646\u0679\u0631\u0627\u06cc\u06a9\u0679\u0648 \u0648\u06cc\u0698\u0648\u0644 \u0648\u06cc\u0648\u0641\u0627\u0631\u0645\u0632 \u062a\u06cc\u0627\u0631 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u060c \u062c\u0633 \u0633\u06d2 \u0635\u0627\u0631\u0641\u06cc\u0646 \u06a9\u0648 \u067e\u0644\u06d2 \u0628\u06cc\u06a9\u060c \u0645\u062a\u062d\u0631\u06a9 \u0631\u0641\u062a\u0627\u0631 \u0627\u06cc\u0688\u062c\u0633\u0679\u0645\u0646\u0679 \u067e\u0631 \u0645\u06a9\u0645\u0644 \u06a9\u0646\u0679\u0631\u0648\u0644 \u0645\u0644\u062a\u0627 \u06c1\u06d2\u06d4<code>1x<\/code>\u060c <code>1.5x<\/code>\u060c <code>2x<\/code>)\u060c \u0627\u0648\u0631 \u062a\u0644\u0627\u0634 \u06a9\u0631 \u0631\u06c1\u06d2 \u06c1\u06cc\u06ba\u06d4 \u06cc\u06c1 \u0648\u0633\u06cc\u0639 \u067e\u06cc\u0645\u0627\u0646\u06d2 \u067e\u0631 UX \u0627\u0635\u0644\u0627\u062d\u0627\u062a \u06c1\u06cc\u06ba \u062c\u0648 \u062d\u062a\u0645\u06cc \u0646\u062a\u06cc\u062c\u06c1 \u06a9\u0648 \u067e\u0631\u06cc\u0645\u06cc\u0645 \u0627\u0648\u0631 \u0646\u0641\u06cc\u0633 \u0645\u062d\u0633\u0648\u0633 \u06a9\u0631\u062a\u06cc \u06c1\u06cc\u06ba\u06d4<\/p>\n<h2 id=\"heading-conclusion\">\u0646\u062a\u06cc\u062c\u06c1<\/h2>\n<p>\u0679\u06cc\u06a9\u0633\u0679 \u0679\u0648 \u0627\u0633\u067e\u06cc\u0686 \u06a9\u0648 \u06a9\u0644\u0627\u0624\u0688 \u0633\u06d2 \u0622\u0646 \u0688\u06cc\u0648\u0627\u0626\u0633 \u06c1\u0627\u0631\u0688\u0648\u06cc\u0626\u0631 \u0645\u06cc\u06ba \u0645\u0646\u062a\u0642\u0644 \u06a9\u0631\u0646\u0627 \u0645\u0648\u0628\u0627\u0626\u0644 \u0627\u06cc\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u0688\u0648\u06cc\u0644\u067e\u0631\u0632 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u06a9 \u0639\u0645\u0644\u06cc \u0637\u0631\u06cc\u0642\u06c1 \u067e\u06cc\u0634 \u06a9\u0631\u062a\u0627 \u06c1\u06d2\u06d4 \u0645\u0627\u0688\u0644 \u06a9\u0627 \u0627\u0646\u062f\u0627\u0632\u06c1 \u0645\u0642\u0627\u0645\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0686\u0644\u0627\u0646\u06d2 \u0633\u06d2 \u0631\u06cc\u0645\u0648\u0679 \u0627\u0646\u0679\u0631\u0646\u06cc\u0679 \u06a9\u0646\u06cc\u06a9\u0634\u0646\u0632 \u067e\u0631 \u0627\u0646\u062d\u0635\u0627\u0631 \u062e\u062a\u0645 \u06c1\u0648\u062c\u0627\u062a\u0627 \u06c1\u06d2\u060c \u0628\u0627\u0631 \u0628\u0627\u0631 \u0686\u0644\u0646\u06d2 \u0648\u0627\u0644\u06d2 API \u06a9\u06d2 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u06cc \u0644\u0627\u06af\u062a \u062e\u062a\u0645 \u06c1\u0648\u062c\u0627\u062a\u06cc \u06c1\u06d2\u060c \u0627\u0648\u0631 \u0627\u0633 \u0628\u0627\u062a \u06a9\u0648 \u06cc\u0642\u06cc\u0646\u06cc \u0628\u0646\u0627\u062a\u0627 \u06c1\u06d2 \u06a9\u06c1 \u0635\u0627\u0631\u0641 \u06a9\u0627 \u0679\u06cc\u06a9\u0633\u0679 \u0627\u0646 \u067e\u0679 \u06a9\u0628\u06be\u06cc \u0628\u06be\u06cc \u0641\u0632\u06cc\u06a9\u0644 \u0688\u06cc\u0648\u0627\u0626\u0633 \u06a9\u0648 \u0646\u06c1\u06cc\u06ba \u0686\u06be\u0648\u0691\u062a\u0627 \u06c1\u06d2\u06d4<\/p>\n<p>\u0645\u0642\u0627\u0645\u06cc \u062a\u0642\u0631\u06cc\u0631 \u06a9\u06cc \u062a\u0631\u06a9\u06cc\u0628 \u06a9\u0648 \u0645\u0631\u0628\u0648\u0637 \u06a9\u0631\u0646\u0627 \u0627\u0646\u0679\u0631\u0627\u06cc\u06a9\u0679\u0648\u060c \u062a\u0639\u0644\u06cc\u0645\u06cc\u060c \u06cc\u0627 \u0628\u0627\u062a \u0686\u06cc\u062a \u06a9\u06cc \u0627\u06cc\u067e\u0633 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0628\u06c1\u062a \u0645\u0641\u06cc\u062f \u06c1\u0648 \u0633\u06a9\u062a\u0627 \u06c1\u06d2\u06d4 \u0645\u062b\u0627\u0644 \u06a9\u06d2 \u0637\u0648\u0631 \u067e\u0631\u060c \u0622\u0648\u0627\u0632 \u06a9\u06cc \u0631\u06c1\u0646\u0645\u0627\u0626\u06cc \u06a9\u06d2 \u0646\u0638\u0627\u0645 \u0645\u06cc\u06ba \u0622\u0646 \u0688\u06cc\u0648\u0627\u0626\u0633 TTS \u06a9\u0627 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u0627\u06cc\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u06a9\u0648 \u0646\u062c\u06cc \u06cc\u0627 \u0622\u0641 \u0644\u0627\u0626\u0646 \u0645\u0627\u062d\u0648\u0644 \u0645\u06cc\u06ba \u06a9\u0627\u0645 \u06a9\u0631\u0646\u06d2 \u06a9\u06cc \u0627\u062c\u0627\u0632\u062a \u062f\u06cc\u062a\u0627 \u06c1\u06d2\u06d4 \u062c\u06cc\u0633\u0627 \u06a9\u06c1 \u0627\u06cc\u062c \u067e\u0631\u0648\u0633\u06cc\u0633\u0631\u0632 \u06c1\u0627\u0631\u0688 \u0648\u06cc\u0626\u0631 \u0627\u06cc\u06a9\u0633\u0644\u0631\u06cc\u0634\u0646 \u06a9\u0648\u0631 \u062d\u0627\u0635\u0644 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba \u0627\u0648\u0631 \u0627\u0648\u067e\u0646 \u0633\u0648\u0631\u0633 \u0645\u0627\u0688\u0644\u0632 \u06a9\u0648\u0627\u0646\u0679\u0627\u0626\u0632\u06cc\u0634\u0646 \u0631\u06cc\u0633\u0631\u0686 \u06a9\u06d2 \u0630\u0631\u06cc\u0639\u06d2 \u0645\u06cc\u0645\u0648\u0631\u06cc \u06a9\u0627 \u0633\u0627\u0626\u0632 \u06a9\u0645 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba\u060c \u0645\u0642\u0627\u0645\u06cc-\u067e\u06c1\u0644\u06d2 \u0641\u0646 \u062a\u0639\u0645\u06cc\u0631\u0627\u062a \u0627\u06cc\u0633\u06d2 \u0688\u0648\u06cc\u0644\u067e\u0631\u0632 \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u06cc\u06a9 \u0637\u0627\u0642\u062a\u0648\u0631 \u0645\u062a\u0628\u0627\u062f\u0644 \u067e\u06cc\u0634 \u06a9\u0631\u062a\u06d2 \u06c1\u06cc\u06ba \u062c\u0648 \u067e\u0631\u0627\u0626\u06cc\u0648\u06cc\u0633\u06cc\u060c \u0622\u0641 \u0644\u0627\u0626\u0646 \u0644\u0686\u06a9\u060c \u0627\u0648\u0631 \u0645\u062a\u0648\u0642\u0639 \u0644\u0627\u06af\u062a \u06a9\u06d2 \u0688\u06be\u0627\u0646\u0686\u06d2 \u06a9\u0648 \u062a\u0631\u062c\u06cc\u062d \u062f\u06cc\u062a\u06d2 \u06c1\u06cc\u06ba\u06d4<\/p>\n<h2 id=\"heading-resources-and-further-reading\">\u0648\u0633\u0627\u0626\u0644 \u0627\u0648\u0631 \u0627\u0636\u0627\u0641\u06cc \u0648\u0633\u0627\u0626\u0644<\/h2>\n<p>\u0645\u0642\u0627\u0645\u06cc \u0679\u06cc\u06a9\u0633\u0679 \u0679\u0648 \u0627\u0633\u067e\u06cc\u0686 \u0627\u0646\u0641\u0631\u0646\u0633 \u06a9\u06d2 \u0628\u0627\u0631\u06d2 \u0645\u06cc\u06ba \u0645\u0632\u06cc\u062f \u062c\u0627\u0646\u0646\u06d2 \u06a9\u06d2 \u0644\u06cc\u06d2\u060c \u0633\u0648\u0631\u0633 \u06a9\u0648\u0688 \u06a9\u0627 \u0645\u0639\u0627\u0626\u0646\u06c1 \u06a9\u0631\u06cc\u06ba\u060c \u06cc\u0627 \u0645\u0648\u0628\u0627\u0626\u0644 \u0627\u06cc\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\u0632 \u06a9\u06cc \u0627\u06cc\u0688\u0648\u0627\u0646\u0633 \u06a9\u0646\u0641\u06cc\u06af\u0631\u06cc\u0634\u0646 \u062f\u0631\u06cc\u0627\u0641\u062a \u06a9\u0631\u06cc\u06ba\u060c \u062f\u0631\u062c \u0630\u06cc\u0644 \u0648\u0633\u0627\u0626\u0644 \u06a9\u0648 \u062f\u06cc\u06a9\u06be\u06cc\u06ba:<\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u062c\u0628 \u0645\u06cc\u06ba \u0646\u06d2 QuizRope \u06a9\u0648 \u062d\u062a\u0645\u06cc \u0634\u06a9\u0644 \u062f\u06cc\u060c \u0627\u06cc\u06a9 \u062a\u0639\u0644\u06cc\u0645\u06cc \u0645\u0648\u0628\u0627\u0626\u0644 \u0627\u06cc\u067e \u062c\u0648 LLM \u06a9\u0648 \u062d\u0642\u06cc\u0642\u06cc \u0648\u0642\u062a \u0645\u06cc\u06ba \u0679\u06cc\u0648\u0634\u0646 \u0627\u0648\u0631 \u06c1\u0648\u0645 \u0648\u0631\u06a9 \u0645\u06cc\u06ba \u0645\u062f\u062f \u06a9\u06d2 \u0644\u06cc\u06d2 \u0627\u0633\u062a\u0639\u0645\u0627\u0644 \u06a9\u0631\u062a\u06cc \u06c1\u06d2\u060c \u0645\u062c\u06be\u06d2 \u0645\u0639\u0644\u0648\u0645 \u062a\u06be\u0627 \u06a9\u06c1 \u0627\u06af\u0644\u0627 \u0645\u0646\u0637\u0642\u06cc \u0645\u0631\u062d\u0644\u06c1 \u0622\u0648\u0627\u0632 \u062a\u06be\u0627\u06d4 \u0627\u0633\u06a9\u0631\u06cc\u0646 \u067e\u0631 \u0645\u062a\u0646 \u067e\u0691\u06be\u0646\u0627 \u0628\u06c1\u062a \u0627\u0686\u06be\u0627 \u06c1\u06d2\u060c \u0644\u06cc\u06a9\u0646 \u062c\u0633\u0645\u0627\u0646\u06cc \u0637\u0648\u0631 \u067e\u0631 \u0627\u06cc\u06a9 AI \u0627\u0633\u062a\u0627\u062f \u06c1\u0648\u0646\u0627 \u06a9\u06c1\u0646\u0627 \u0622\u067e [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[1],"tags":[],"class_list":["post-25336","post","type-post","status-publish","format-standard","hentry","category-blog"],"_links":{"self":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/posts\/25336","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/comments?post=25336"}],"version-history":[{"count":0,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/posts\/25336\/revisions"}],"wp:attachment":[{"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/media?parent=25336"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/categories?post=25336"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/umang.pk\/en_us\/wp-json\/wp\/v2\/tags?post=25336"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}