Ruka hadi maudhui makuu
Mafunzo ya AI

Jenga na Uendeshe Programu Ndogo ya Kujifunza ya WeChat Inayoendeshwa na AI

Jifunze jinsi ya kusanidi na kuendesha Programu Ndogo Mahiri ya Kujifunza yenye Msingi wa Maarifa wa AI, kuunganisha backend yake ya FastAPI na frontend ya Taro, kuthibitisha huduma, kutekeleza majaribio, na kuandaa backend inayotumia Docker kwa ajili ya kupelekwa.

Jenga na Uendeshe Programu Ndogo ya Kujifunza ya WeChat Inayoendeshwa na AI

Utakachojenga

AI Knowledge Base Smart Learning Mini App ni programu mahiri ya kujifunzia kwa mfumo wa WeChat. Mwanafunzi anaweza kuingiza mada au kupakia hati binafsi, kisha kutumia mtiririko wa kazi unaosaidiwa na AI kutengeneza maswali, kupokea maelezo ya papo hapo, na kukagua ripoti inayoonyesha kiwango cha uelewa, maeneo dhaifu, na hatua zinazopendekezwa baadaye.

Mradi huu unaunganisha miundo mikubwa ya lugha, utafutaji wa wavuti, na uzalishaji unaosaidiwa na urejeshaji wa taarifa. Tavily hutoa muktadha wa sasa kutoka kwenye wavuti, huku Chroma ikiwezesha urejeshaji kutoka kwenye faili zilizopakiwa za PDF, Word, Markdown, na TXT.

Vipengele Muhimu

  • Uzalishaji wa maswali kulingana na mada: Tengeneza maswali ya kujifunzia kutoka kwenye mada iliyotolewa na mtumiaji.
  • Uboreshaji kwa utafutaji wa wavuti: Tumia Tavily kuongeza muktadha wa kisasa.
  • Kujifunza kutoka kwenye hifadhidata binafsi ya maarifa: Pakia hati za PDF, Word, Markdown, au TXT na urejeshe maudhui yanayohusiana kwa kutumia RAG.
  • Mrejesho wa papo hapo: Kagua majibu na utoe maelezo baada ya kila jibu.
  • Ripoti za kujifunza: Changanua kiwango cha uelewa, tambua maeneo dhaifu, na utoe mapendekezo ya kujifunzia.
  • Vielelezo vya maswali: Tengeneza picha za kusaidia na uzihifadhi katika Tencent Cloud COS.
  • Usaidizi wa watumiaji wa WeChat: Toa kuingia, historia ya kujifunza, na ukaguzi wa ripoti.
  • Usambazaji wa kontena: Sambaza backend kupitia Docker hadi WeChat Cloud Run au mfumo mwingine unaooana.

Elewa Muundo wa Mfumo

Frontend ya mini app hutumia Taro 4, React 18, TypeScript, na Sass. Backend huendeshwa kwa Python 3.11 pamoja na FastAPI, Pydantic v2, na Uvicorn. LangChain na LangGraph huratibu shughuli za AI, huku DeepSeek na Alibaba Bailian zikijumuishwa katika mfumo wa modeli na urejeshaji.

MySQL hutoa hifadhi ya data ya programu, Tencent Cloud COS huhifadhi vielelezo vilivyotengenezwa, na Chroma hutumika kama hifadhi ya vekta. Uthibitishaji hutumia WeChat jscode2session na JWT. Majaribio ya backend hutumia pytest na pytest-asyncio.

Muundo wa Hifadhi

.
├── backend/        # FastAPI backend
├── frontend/       # Taro-based WeChat mini app frontend
├── docs/           # project docs kept locally
├── openspec/       # specification files kept locally
└── prototypes/     # prototype files kept locally

Mahitaji ya Awali

Kabla ya kuanza, sakinisha Python 3.11, Node.js pamoja na npm, na WeChat DevTools. Pia utahitaji vitambulisho vya huduma na thamani za usanidi zinazotarajiwa na backend/.env.example. Docker inahitajika tu unapokuwa tayari kujenga au kusambaza kontena la backend.

Usiweke funguo halisi za API, vitambulisho vya hifadhidata, siri za JWT, na vitambulisho vya hifadhi ya wingu katika udhibiti wa matoleo. Siri za uzalishaji zinapaswa kuingizwa kupitia mfumo wa usambazaji.

Hatua ya 1: Sanidi Backend

Fungua terminali, ingia kwenye saraka ya backend, na uunde mazingira maalum ya Python. README hutoa usanidi ufuatao unaolenga PowerShell:

cd backend
python -m venv venv
venv\Scripts\Activate.ps1
pip install -r requirements.txt
copy .env.example .env

Fungua faili jipya la .env na uweke usanidi unaohitajika na modeli ulizochagua, muunganisho wa Tavily, hifadhidata, uthibitishaji, urejeshaji wa vekta, na hifadhi ya Tencent Cloud. Tumia backend/.env.example kama orodha rasmi ya vigezo vinavyotarajiwa.

Anzisha Huduma ya FastAPI

python -m uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

Chaguo la --reload ni muhimu wakati wa uendelezaji wa ndani kwa sababu Uvicorn huanzisha upya huduma msimbo wa backend unapobadilika. Kufunga kwenye 0.0.0.0 hufanya huduma ya uendelezaji ipatikane kupitia miingiliano ya mtandao ya mashine.

Thibitisha Backend

Baada ya kuanza, fungua nyaraka shirikishi za API kwenye http://localhost:8000/docs. Unaweza pia kuangalia afya ya huduma kwenye http://localhost:8000/api/v1/health.

Thibitisha endpoint ya afya kabla ya kutatua matatizo ya frontend. Ikiwa haipatikani, hakikisha mazingira ya mtandaoni yamewashwa, vitegemezi vimesakinishwa kwa mafanikio, faili la .env lipo, na port 8000 haitumiki na programu nyingine.

Hatua ya 2: Jenga Frontend ya WeChat Mini App

Endelea kuendesha backend, fungua terminali ya pili, na sakinisha vitegemezi vya frontend:

cd frontend
npm install
npm run dev:weapp

Amri ya uendelezaji hukompili programu ya Taro kwa ajili ya WeChat. Ukusanyaji unapokamilika, anzisha WeChat DevTools na ufungue saraka iliyotengenezwa ya frontend/dist.

Weka terminali ya kompaila ikiwa wazi wakati wa uendelezaji ili mabadiliko ya frontend yaweze kujengwa upya. Seva ya FastAPI inapaswa kuendelea kufanya kazi kwenye terminali yake ili mini app iweze kufikia utendaji wa backend.

Hatua ya 3: Jaribu Mtiririko wa Kujifunza

Baada ya frontend na backend kuanza kufanya kazi, mradi huu unaunga mkono njia mbili kuu za kujifunza.

Tengeneza Maswali kutoka kwenye Mada

  1. Ingia kupitia mtiririko wa mtumiaji wa WeChat.
  2. Weka somo unalotaka kujifunza.
  3. Tengeneza maswali yanayosaidiwa na AI kulingana na mada hiyo.
  4. Tuma majibu na ukague majibu pamoja na maelezo yaliyorejeshwa.
  5. Kamilisha kipindi cha kujifunza na kagua ripoti ya AI kwa uchanganuzi wa kiwango cha uelewa, maeneo dhaifu, na mapendekezo.

Jifunze kutoka kwenye Hati Binafsi

  1. Chagua hati ya PDF, Word, Markdown, au TXT inayotumika.
  2. Pakia hati hiyo kwenye mtiririko wa kazi wa hifadhidata ya maarifa wa programu.
  3. Ruhusu mfumo kupata muktadha unaofaa wa hati kupitia mchakato wake wa RAG.
  4. Jibu maswali yaliyotengenezwa na upitie maelezo.
  5. Tumia ripoti inayotokana na mchakato huo kuamua ni sehemu zipi za nyenzo zinahitaji kusomwa zaidi.

Ujifunzaji unaotegemea mada unaweza kutumia Tavily kuongeza muktadha wa hivi karibuni kutoka kwenye wavuti. Ujifunzaji unaotegemea hati huweka upatikanaji wa taarifa kwenye nyenzo za faragha zilizopakiwa. Tabia halisi inayopatikana inategemea huduma na vitambulisho vilivyosanidiwa katika mazingira ya backend.

Hatua ya 4: Endesha Seti ya Majaribio

Endesha majaribio ya backend kutoka kwenye saraka ya backend:

cd backend
pytest

Mradi huu unatumia pytest na pytest-asyncio. Endesha seti nzima baada ya kufanya mabadiliko kwenye backend na kabla ya kusambaza ili kugundua hitilafu zinazorudisha nyuma tabia za kazi za kawaida na zisizo za kusubiri.

Vidokezo vya Juu

Tumia Nyaraka za API Wakati wa Maendeleo

Ukurasa wa nyaraka wa FastAPI ni muhimu kwa kukagua njia zinazotolewa na toleo linaloendesha la mradi. Uitumie kama chanzo halisi cha taarifa badala ya kudhani sehemu za maombi au njia za mwisho ambazo hazijaandikwa kwenye README.

Tenganisha Siri za Maendeleo na Uzalishaji

Tumia faili ya ndani ya .env kwa maendeleo pekee. Katika mazingira ya uzalishaji, sanidi siri kupitia WeChat Cloud Run au jukwaa la kontena lililochaguliwa. Usihifadhi faili za mazingira zilizo na taarifa zilizojazwa kwenye hifadhi ya msimbo.

Chagua Chanzo Kinachofaa cha Maarifa

Tumia utengenezaji wa mada pamoja na Tavily wakati taarifa mpya ni muhimu. Tumia mtiririko wa hati wakati maswali yanapaswa kutegemea nyenzo za faragha au za shirika husika. Hati zinazotumika ni PDF, Word, Markdown, na TXT.

Thibitisha Huduma kwa Tabaka

  1. Thibitisha kuwa endpoint ya afya inajibu.
  2. Kagua nyaraka za FastAPI.
  3. Endesha pytest.
  4. Kompili frontend ya Taro.
  5. Fungua frontend/dist katika WeChat DevTools.
  6. Fanya majaribio ya kuingia, utengenezaji wa jaribio, mrejesho, historia, na mapitio ya ripoti ukitumia huduma za nje zilizosanidiwa.

Mpangilio huu hurahisisha kutofautisha matatizo ya usanidi wa backend na matatizo ya ukompilaji wa frontend au zana za WeChat.

Jitayarishe kwa Usambazaji wa Kontena

Hifadhi ya msimbo ina backend/Dockerfile na backend/.dockerignore. Faili hizi huwezesha backend kufungashwa kama kontena la Docker kwa WeChat Cloud Run au jukwaa lingine linalooana.

Kabla ya kusambaza, endesha majaribio, thibitisha kuwa vigezo vinavyohitajika vya mazingira ya uzalishaji vinapatikana kupitia jukwaa, na epuka kuweka siri kwenye picha. Thibitisha kuwa vitegemezi vya nje kama MySQL, Tencent Cloud COS, watoa huduma wa miundo, Tavily, na uthibitishaji wa WeChat vinaweza kufikiwa kutoka kwenye mazingira ya usambazaji.

Hitimisho

Mradi huu unatoa msingi kamili wa ujifunzaji unaosaidiwa na AI katika WeChat: programu ndogo ya Taro na React, backend ya FastAPI, utengenezaji wa majaribio unaotegemea mada na hati, maelezo ya papo hapo, ripoti za masomo, historia ya mtumiaji, na usambazaji ulio tayari kwa kontena. Anza kwa kuthibitisha backend, kompili frontend katika WeChat DevTools, kisha sanidi huduma za nje zinazohitajika kwa mtiririko wako wa ujifunzaji uliouchagua.