Ruka hadi maudhui makuu
Mafunzo ya AI

Mafunzo ya McButler: Tumia MCP ya McDonald’s kupata mapendekezo, uchambuzi wa lishe, ulinganisho wa bei za migahawa na usanidi wa milo ya kikundi

Mafunzo haya yanaeleza jinsi ya kusakinisha na kutumia McButler, ukitumia amri sita kupata mapendekezo ya vyakula, uchanganuzi wa lishe ya mlo, ulinganisho wa gharama kamili za migahawa, usanidi wa milo ya watu wengi, ukokotoaji wa alama za McRisk na uundaji wa michezo midogo shirikishi.

Mafunzo ya McButler kwa mapendekezo, uchanganuzi wa lishe, ulinganisho wa bei na milo ya kikundi

McButler ni nini

McButler (msaidizi wa kuagiza wa kujihudumia wa McDonald's) ni mradi wa kusaidia kuagiza unaotumia MCP rasmi ya McDonald's. Haupendekezi tu mlo kwa bei, bali hujaribu kushughulikia kwa pamoja vikwazo vya bajeti, afya, muda, vyakula visivyofaa na mapendeleo binafsi.

Mradi unaweza kutumiwa kama WorkBuddy Skill, au kuendeshwa kupitia CLI ya ndani kwa kutumia data ya onyesho iliyojumuishwa. Wasanidi wanaweza pia kutumia tena moduli zake za kuchanganua data na kukadiria, kisha kuunganisha data inayorejeshwa na MCP ya McDonald's kwenye mteja wao wenyewe.

Ukumbi mdogo wa McDonald's

Hifadhi ya mradi iko kwenye GitHub, na Ukumbi mdogo wa McDonald's pia una ukurasa wa kujaribu mtandaoni. Kumbuka kuwa McButler ni kazi huru ya mashindano, si bidhaa rasmi ya McDonald's.

Uwezo sita wa msingi

1. Mapendekezo ya kila siku

recommend inaunga mkono hali tatu: kuokoa pesa, afya na umaarufu. Kila hali hutumia mantiki tofauti ya kupanga, badala ya kubadilisha tu sehemu moja ya upangaji.

  • Hali ya kuokoa pesa: Huchanganya thamani ya bei iliyosawazishwa, ukubwa wa punguzo na bei kwa kila 100 kcal, ili kuzuia mlo mdogo kuonekana juu kwa sababu tu ya bei yake ya jumla kuwa ndogo.
  • Hali ya afya: Huchanganya alama ya afya na ulinganifu wa nishati, huku ikitanguliza chaguo zenye data ya lishe iliyopimwa.
  • Hali ya umaarufu: Huchanganya lebo za bidhaa maarufu, taarifa za maagizo ya zamani na punguzo.

2. Ukaguzi wa afya

health ndiyo kiini cha kiufundi cha mradi. Kwa kuwa kiolesura cha lishe hutoa data ya bidhaa moja moja, McButler husoma kwanza maelezo ya mlo wa pamoja, huugawanya kuwa vipengele vyake vya msingi, kisha hutafuta kila kipengele kwenye jedwali la lishe na kujumlisha nishati, protini, mafuta, sodiamu na kalsiamu.

Maelezo ya mlo wa pamoja
→ Soma vipengele vya msingi
→ Tafuta data ya lishe ya kila bidhaa
→ Jumlisha thamani za lishe
→ Kadiria alama ya afya na vipengele vya makato

Alama ya afya hutumia mfumo wa pointi 100 na huzingatia kiwango cha nishati, protini, uwiano wa nishati kutoka mafuta, sodiamu, mzigo wa sukari na mafuta, pamoja na bonasi ya matunda na mboga. Fomula ya kina inapatikana kwenye references/model-spec.md katika hifadhi.

3. Ulinganishaji wa gharama kamili za migahawa

stores inaweza kuchagua mgahawa kwa kuzingatia ukaribu, bei ya chini au gharama kamili. Hali ya gharama kamili haizingatii bei ya bidhaa pekee, bali pia hubadilisha umbali wa kwenda na kurudi, muda wa kutembea na muda wa kusubiri kuwa gharama.

Gharama kamili = Bei ya bidhaa
               + Gharama ya umbali (0.5 yuan/km kwa kwenda na kurudi)
               + Gharama ya muda (muda wa kutembea kwenda na kurudi + muda wa kusubiri) × 0.30 yuan/dakika

Kwa hiyo, mgahawa wa karibu zaidi si lazima uwe wenye faida zaidi. Kwa sasa, muda wa kusubiri hautolewi moja kwa moja na kiolesura cha MCP; mtumiaji anahitaji kuuweka au kuukadiria.

4. Ugawaji wa milo ya kikundi

bulk inalenga maagizo ya chakula ya idara za utawala, HR, madarasa na timu. Inaweza kugawa watu katika vikundi na kupanga milo kulingana na idadi ya watu, bajeti ya kila mtu, kutokula nyama ya ng'ombe na kutokula pilipili, kisha kutoa orderItems zinazoweza kuendelea kutumwa kwenye mchakato wa kukokotoa bei.

Matokeo yanajumuisha idadi ya watu kwa kila kikundi, idadi ya milo, bei ya jumla, bei kwa kila mtu, kiasi kilichookolewa na nishati kwa kila mtu. Hata hivyo, “kutokula nyama ya ng'ombe” kwa sasa hutegemea kuchuja maneno muhimu kwenye majina ya vyakula, hivyo haiwezi kuhakikisha kuwa bidhaa zenye viambato ambavyo havijaonyeshwa wazi kwenye menyu zitatambuliwa.

5. Alama ya hatari ya McDonald's

credit imechukua mfumo wa alama za mikopo ya matumizi ili kukokotoa alama ya hatari ya McDonald's kati ya 300 na 950 kwa akaunti na agizo moja. Vipimo sita ni uthabiti wa kutimiza maagizo, mpangilio wa matumizi, nidhamu ya bajeti, kiwango cha kutumia ofa, mali ya akaunti na utofauti wa ladha.

Matokeo huonyesha alama za kila kipimo na chanzo chake cha data, badala ya kutoa jumla moja isiyoweza kuelezeka. Kipengele hiki ni uchanganuzi wa matumizi wa kuburudisha, na hakiwakilishi tathmini halisi ya uaminifu wa kifedha.

6. Ukumbi mdogo wa McDonald's

theater hutumia kuponi, alama ya hatari ya McDonald's na data ya nishati kuunda mabishano ya kuagiza kati ya wahusika watano, kisha hutoa ukurasa wa HTML wa faili moja. Ukurasa unaozalishwa hauhitaji utegemezi wa ziada na unaweza kufunguliwa moja kwa moja kwenye kivinjari.

Kuandaa mazingira ya kuendesha

Hali ya ndani inahitaji tu Python 3.8 au toleo la juu zaidi, na hutumia maktaba ya kawaida ya Python pekee bila kusakinisha vifurushi vya wahusika wengine. Hali ya MCP mtandaoni inahitaji MCP Token inayofanya kazi.

Clone hifadhi na endesha kujipima

git clone https://github.com/jouaaaaaa/mcd-self-butler.git
cd mcd-self-butler
python scripts/selftest.py

Kujipima kuna visa 9 vya nje ya mtandao vinavyoshughulikia ukaguzi wa afya, mapendekezo matatu, alama ya hatari ya akaunti na agizo, milo ya kikundi, ulinganishaji wa migahawa na ukumbi wa maandishi pekee. Vyote vikifaulu, inaonyesha kuwa mazingira ya ndani na data ya onyesho vinafanya kazi kawaida.

Njia ya kwanza: Sakinisha kama Skill kwenye WorkBuddy

  1. Weka SKILL.md, scripts/ na references/ kutoka kwenye hifadhi kwenye saraka ifuatayo:

    ~/.workbuddy/skills/mcd-self-butler/
  2. Kwenye WorkBuddy, nenda kwenye “Wataalamu · Ujuzi · Viunganishi”, kisha chagua kwa mfuatano “Viunganishi”, “Kiunganishi maalum” na “Sanidi MCP”.

  3. Jaza usanidi wa Streamable HTTP wa MCP ya McDonald's, na ubadilishe kishikilia nafasi kwa Token yako mwenyewe:

    {
      "mcpServers": {
        "mcd-mcp": {
          "type": "streamablehttp",
          "url": "https://mcp.mcd.cn",
          "headers": {
            "Authorization": "Bearer 你的_MCP_TOKEN"
          }
        }
      }
    }
  4. Washa kiunganishi cha mcd-mcp, kisha eleza mahitaji yako kwa lugha ya kawaida.

Unaweza kuanza na maombi yafuatayo:

  • “Niko Nanjing West Road; ni McDonald's gani iliyo karibu yenye bei nzuri zaidi ya seti ya Big Mac ya vitu vitatu?”
  • “Nisaidie kuangalia kalori za mlo huu. Je, kuna badiliko lenye afya zaidi?”
  • “Mlo wa kikundi wa watu 30 wa idara, yuan 30 kwa kila mtu, watu 5 hawali nyama ya ng'ombe.”
  • “Alama yangu ya hatari ya McDonald's ni ngapi?”
  • “Nimechoshwa na kusubiri chakula; waache wabishane.”

Njia ya pili: Tumia CLI ya ndani

CLI ya ndani hutumia picha ya onyesho iliyo ndani ya hifadhi, bila Token wala muunganisho wa mtandao. Uwezo wote sita hupatikana kupitia scripts/mcd_butler.py.

Kagua lishe ya mlo wa pamoja

python scripts/mcd_butler.py health \
  --nutrition demo/nutrition.txt \
  --combo demo/combo_9900011128.json

Amri hii huvunja mlo wa pamoja, hulinganisha jedwali la lishe na kutoa matokeo ya muhtasari. Matokeo yanajumuisha data ya lishe ya kila kipengele, jumla ya mlo, alama ya afya na sababu mahususi za makato.

Pata mapendekezo yenye afya

python scripts/mcd_butler.py recommend \
  --menu demo/menu_1450118.json \
  --nutrition demo/nutrition.txt \
  --mode healthy \
  --meal lunch \
  --budget 45 \
  --top 5 \
  --details demo/details.json

--mode healthy inaonyesha matumizi ya hali ya afya, --meal lunch huteua mazingira ya chakula cha mchana, --budget 45 huweka bajeti kuwa yuan 45, na --top 5 hurejesha matokeo matano ya juu.

Ukitaka kuchunguza mikakati mingine, unaweza kutumia mantiki ya kuokoa pesa au umaarufu kulingana na hali zinazoungwa mkono na CLI. Matokeo ya hali tofauti yanaweza kutofautiana sana kwa sababu hutumia kazi tofauti za thamani.

Kokotoa alama ya hatari ya McDonald's

python scripts/mcd_butler.py credit \
  --orders demo/orders.json \
  --account demo/account.json \
  --coupons demo/coupons.md \
  --nutrition demo/nutrition.txt

Amri hii huchanganya maagizo ya zamani, taarifa za akaunti, kuponi na data ya lishe ili kutoa jumla ya alama, daraja na maelezo ya vipimo sita. Matokeo ya mfano kwenye data ya onyesho ni alama 771, daraja la Big Mac, lakini alama halisi hutegemea data ya uingizaji.

Sanidi mlo wa kikundi wa watu 30

python scripts/mcd_butler.py bulk \
  --menu demo/menu_1450118.json \
  --nutrition demo/nutrition.txt \
  --headcount 30 \
  --budget 30 \
  --no-beef 5 \
  --no-spicy 4

Hapa kuna watu 30, bajeti ya yuan 30 kwa kila mtu, watu 5 wasiokula nyama ya ng'ombe na watu 4 wasiokula pilipili. Programu itagawa watu katika vikundi, kuchagua milo na kuzalisha vipengele vya maagizo ambavyo idadi yake inaweza kukokotolewa.

Linganisha gharama kamili za migahawa

python scripts/mcd_butler.py stores \
  --stores demo/stores.json \
  --mode balanced

Hali ya balanced huchanganya umbali, muda na bei. Unapotumia data yako mwenyewe, toa au kadiria kwa uwazi muda wa kusubiri; usichukulie thamani ya mfano kuwa matokeo ya wakati halisi.

Unda Ukumbi mdogo wa McDonald's

python scripts/mcd_butler.py theater \
  --context demo/theater_context.json \
  --out theater.html

Baada ya kuendesha, theater.html itaundwa kwenye saraka ya sasa. Ifungue moja kwa moja kwenye kivinjari ili kutazama mazungumzo ya wahusika, viputo vya maneno na athari ya uamuzi wa mwisho.

Njia ya tatu: Unganisha mteja wako mwenyewe wa MCP

Wasanidi wanaweza kutumia njia mbili za kuunganisha.

  1. Hifadhi majibu ghafi: Kwenye mteja wa MCP, ita zana za migahawa, menyu, maelezo, lishe, kukokotoa bei, kuponi au maagizo, hifadhi majibu ghafi kwenye faili zenye matumizi sawa na mifano iliyo kwenye demo/, kisha zikabidhi kwa CLI.
  2. Itisha moduli moja kwa moja: Ingiza vitendaji vilivyo kwenye scripts/lib/ na upitishe moja kwa moja dict ya Python inayorejeshwa na MCP.

Safu ya kupakia data mcdata.py hupokea majibu ghafi ya MCP yenye muundo wa {"success": true, "data": ...} pamoja na muundo uliorahisishwa kwa mikono. Kwa hiyo kwa kawaida unaweza kuhifadhi jibu la zana moja kwa moja bila kulisafisha kwanza kwa mikono.

Kuelewa usanifu wa mradi

Mchakato wa McButler unaweza kufupishwa kuwa safu nne:

  1. Safu ya mteja: WorkBuddy Agent au mteja mwingine wa MCP hutuma ombi.
  2. Safu ya huduma ya MCP: Hupata data ya migahawa, menyu, maelezo, lishe, kukokotoa bei, kuponi, pointi na maagizo.
  3. Safu ya kupakia data: mcdata.py hushughulikia kufungua vifurushi, kusawazisha na kulinganisha majina yasiyofanana kabisa.
  4. Safu ya miundo ya biashara: health.py, credit.py, bulk.py, recommend.py na theater.py hutekeleza mtawalia ukadiriaji, upangaji wa milo, mapendekezo na utengenezaji wa hati.

mcd_butler.py ndiyo sehemu kuu ya CLI iliyounganishwa. Inaweza kutoa Markdown au JSON, hivyo inafaa kwa kusomwa na mtu na pia kuunganishwa na programu zinazofuata.

Mbinu za matumizi ya juu

Tanguliza kutoa maelezo ya mlo wa pamoja

Kiolesura cha lishe hutoa data ya bidhaa moja moja pekee. Unapochanganua mlo wa pamoja, ni bora pia kupitisha maelezo yake ili programu itafute kila kipengele kulingana na muundo wa msingi. Ikiwa hakuna data yoyote ya lishe inayolingana, mradi huonyesha alama ya afya kama “—” badala ya kubuni matokeo.

Chagua hali ya mapendekezo kulingana na mazingira

  • Bajeti ikiwa finyu, tumia hali ya kuokoa pesa na uzingatie bei kwa kila 100 kcal.
  • Kwa kupunguza mafuta au kufanya mazoezi, tumia hali ya afya na ukague maelezo ya makato ya protini, mafuta na sodiamu.
  • Ukitaka kuchanganya vyakula maarufu na mapendeleo yako ya zamani, tumia hali ya umaarufu.

Hifadhi data ghafi ya MCP kwa ajili ya kurudia mchakato

Unapochunguza matokeo ya mapendekezo, inashauriwa kuhifadhi jibu ghafi la MCP la wakati huo. Hivyo, hata menyu, bei au hali ya upatikanaji ikibadilika baadaye, bado unaweza kutumia data hiyo hiyo kurudia mchakato wa hesabu.

Tenganisha ubora wa data

McButler hutumia viwango vitatu vya kuweka lebo za data:

  • Iliyopimwa: Data inayopatikana baada ya kuvunja mlo wa seti na kujumlisha kila kipengele.
  • Rasmi: Data inayotoka moja kwa moja kwenye jedwali la lishe la bidhaa moja.
  • Makadirio: Makadirio ya jumla yanayotumika data kamili inapokosekana, na huwekwa lebo wazi.

Unapoonyesha matokeo kwa njia ya kiotomatiki, usifute lebo hizi. Zinawakumbusha watumiaji kutofautisha chanzo na kiwango cha kuaminika kwa data.

Kagua mipaka ya biashara

Kwa sasa, kipengele cha milo ya vikundi bado hakijaunganishwa na uboreshaji wa pamoja wa kanuni za punguzo la maagizo ya kampuni; uamuzi wa kutokula nyama ya ng'ombe unategemea hasa maneno muhimu katika jina la chakula; na muda wa kusubiri pia unahitaji kuingizwa wazi. Kabla ya kutumia mradi huu kwa maagizo halisi, thibitisha tena bei, hali ya upatikanaji na viambato vya vyakula kupitia njia rasmi za McDonald's.

Uchambuzi wa lishe ni kwa ajili ya marejeo pekee, na si ushauri wa kitabibu, lishe au wa kitaalamu wa aina nyingine. Katika masuala yanayohusu magonjwa, ujauzito au lishe ya watoto, wasiliana na mtaalamu.

Hitimisho

McButler inaonyesha jinsi ya kubadilisha data ghafi ya MCP kuwa maamuzi ya matumizi yanayoweza kuelezeka: kuanzia kuvunja milo ya seti, alama za lishe na gharama kamili ya duka, hadi kupanga makundi ya milo ya pamoja, alama za burudani na maudhui shirikishi, yote yanaweza kutumiwa kupitia CLI moja au WorkBuddy Skill.

Kwa matumizi ya kwanza, endesha python scripts/selftest.py, kisha ujaribu health, recommend na stores kwa mfuatano. Baada ya kuthibitisha mchakato wa nje ya mtandao, sanidi MCP Token ili kuunganisha data ya wakati halisi.