ክፍል 7 / 11

በአርቴፊሻል ኢንተለጀንስ ማረም እና የብልሽት ትንተና

ትርፍ፡

  • የብልሽት መዝገቦችን (የቁልል ዱካዎችን) ለአርቴፊሻል ኢንተለጀንስ ከተገቢው ኮድ እና ሁኔታ አውድ ጋር በመስጠት ሊፈጠሩ የሚችሉ መንስኤዎችን በፍጥነት የማጥበብ ችሎታ።
  • የ AI ምርመራን እንደ መላምት በኮድ እና በመሞከር እና ምልክቱን ጸጥ ከማድረግ ይልቅ ዋናውን መንስኤ በቋሚነት የመፍታት ችሎታ።
  • በስንክል መዝገቦች እና ምዝግብ ማስታወሻዎች ውስጥ የግል መረጃን በመደበቅ በማረም ጊዜ ግላዊነትን መጠበቅ

እያንዳንዱ መተግበሪያ ስህተቶችን ይሰጣል; ጥሩ ገንቢን የሚለየው በምን ያህል ፍጥነት ሳንካዎችን እንደሚያገኝ እና እንደሚያስተካክል ነው። የሞባይል ማረም - የችግሩን ምንጭ መፈለግ እና መጠገን - በተለይ አስቸጋሪ ነው ምክንያቱም ስህተቱ በተጠቃሚው መሣሪያ ላይ ፣ ማየት በማይችሉበት አካባቢ ውስጥ ስለሚከሰት። ብዙ ጊዜ፣ ያለዎት የብልሽት መዝገብ (ብልሽት መዝገብ/የቁልል ዱካ — አፕሊኬሽኑ ሲበላሽ የት እንደገባ የሚያሳይ ቴክኒካል ብልሽት) ነው። AI እነዚህን ሚስጥራዊ መዝገቦች በማንበብ፣ ሊሆኑ የሚችሉ ምክንያቶችን በመዘርዘር እና የመፍትሄ ሃሳቦችን በማቅረብ እጅግ በጣም ሀይለኛ ነው። በዚህ ክፍል ውስጥ AIን እንደ “ሳንካ መርማሪ” እንዴት እንደምንጠቀም እንማራለን ነገርግን የመጨረሻውን ምርመራ የማጣራት እና የማስተካከል ሃላፊነት እንተወዋለን።

የብልሽት ምዝግብ ማስታወሻን በማንበብ: AI በጣም የሚያበራበት

የብልሽት መዝገብ ረጅም እና የሚያስፈራ ጽሑፍ ነው; ልምድ የሌለው ገንቢ የት እንደሚታይ አያውቅም። AI ይህንን ጽሑፍ በሰከንዶች ውስጥ ይተነትናል-በየትኛው መስመር ላይ ተበላሽቷል ፣ የትኛው የተለየ ነገር እንደተጣለ ፣ ምክንያቱ ምን ሊሆን ይችላል። የተለመዱ የሞባይል ስሕተቶች ግልጽ ናቸው እና AI በፍጥነት ያውቃቸዋል፡ NullPointerException ( ባዶ እሴትን ለማግኘት መሞከር)፣ IndexOutOfBoundsException (የሌለውን የዝርዝር አባል መድረስ) በአንድሮይድ ላይ፣ EXC_BAD_ACCESS (የነጻ ማህደረ ትውስታን ማግኘት) በiOS ላይ፣ ሳይታሰብ ኒል (ያልተጠበቀ አማራጭ ማስገደድ)።

በጣም የተለመዱት የሞባይል ብልሽቶች ዓይነቶች እና ዓይነተኛ መንስኤዎቻቸው የሚከተሉት ናቸው ።

ስህተት (ከዚህ በስተቀር)

መድረክ

የተለመደ ምክንያት

NullPointerException

አንድሮይድ

ባዶ እሴት መድረስ

indexOutOfBounds ልዩ

አንድሮይድ

የማይገኝ የዝርዝር አባል መድረስ

ሳይታሰብ አልተገኘም።

iOS

አማራጭ (!) መጠቅለልን አስገድድ

EXC_BAD_ACCESS

iOS

ነፃ ማህደረ ትውስታን መድረስ

ኤኤንአር/አሰር

አንድሮይድ

በዋናው ክር ላይ ረጅም/ከባድ ሂደት

ደረጃ በደረጃ የማረም ፍሰት፡-

  1. መዝገቡን ሰብስብ። ከተቻለ ለማባዛት የስንክል ምዝግብ ማስታወሻውን፣ የስህተት መልዕክቱን እና እርምጃዎችን አንድ ላይ ሰብስብ።
  2. የ AI አውድ ስጥ። ስህተቱን ብቻ ሳይሆን የሚመለከተውን ኮድ እና ምን እየሰራ እንደሆነ ንገረኝ።
  3. ሊሆኑ የሚችሉ ምክንያቶችን ይጠይቁ. "በጣም ሊሆኑ የሚችሉ 3 መንስኤዎችን እና እያንዳንዱን እንዴት ማረጋገጥ እንዳለብኝ ንገረኝ"
  4. አረጋግጥ። በኮድ እና በሙከራ ውስጥ የታቀደውን ምክንያት ያረጋግጡ; በመገመት አታስተካክለው።
  5. ያስተካክሉት እና እንደገና ይሞክሩ። ስህተቱ በትክክል እንደጠፋ እና ምንም አዲስ ስህተቶች እንዳልፈጠሩ ያረጋግጡ።
ጠቃሚ ምክር፡ የብልሽት ምዝግብ ማስታወሻውን ለኤአይኤ ሲሰጡ፣ የሚመለከተውን የኮድ ቅንጣቢም ያካትቱ። ቁልል ዱካ ጋር ብቻ AI አጠቃላይ ትንበያ ያደርጋል; ኮዱን ሲያዩ ትክክለኛውን መስመር እና ትክክለኛው መንስኤ የማግኘት እድሉ በጣም ይጨምራል። አውድ የምርመራውን ጥራት ይወስናል.

የግል ውሂብ ወጥመድ

የብልሽት ምዝግብ ማስታወሻዎች እና ምዝግብ ማስታወሻዎች ብዙውን ጊዜ የተጠቃሚ ውሂብ ይይዛሉ፡- ኢሜይል፣ የተጠቃሚ መታወቂያ፣ አካባቢ፣ ሌላው ቀርቶ የቅጽ ይዘት። ይህንን መዝገብ ወደ AI መለጠፍ የግል መረጃን ለሶስተኛ ወገን እያፈሰሰ ነው እና የKVKK/GDPR ጥሰት ነው። ቀረጻውን ከማስገባትዎ በፊት የግል ቦታዎችን ያጽዱ (ጭምብል)። እንዲሁም ከመጀመሪያው ጀምሮ የግል ውሂብን ወደ ማመልከቻዎ ምዝግብ ማስታወሻዎች ላለመፃፍ ይጠንቀቁ; ጥሩ ማስታወሻ ችግሩን ይገልፃል ነገር ግን ማንነቱን አይገልጽም.

ይጠንቀቁ፡ በ AI የተጠቆመው ማስተካከያ “ስህተቱን ዝም ሊያሰኘው ይችላል” ግን ዋናውን መንስኤ ላይፈታ ይችላል። ለምሳሌ NullPointerExceptionን በኑል ቼክ መጠቅለል ብልሽቱን ያቆመዋል፣ነገር ግን እሴቱ ለምን ባዶ እንደሆነ ካላወቁ ትክክለኛው የሎጂክ ስህተቱ ይቀጥላል። ምልክቱን ሳይሆን በሽታውን ማከም.

የስር መንስኤ ትንተና

የባለሙያ ማረም አላማ ስህተቱን ዝም ማሰኘት ሳይሆን ዋናውን ምክንያት መፈለግ ነው። አይአይን “ለምን ይህ ባዶ ሊሆን ይችላል፣ በውሂብ ፍሰቱ ውስጥ የት ጠፋ?” ብዬ ጠየኩት። "ይህን እንዴት ዝም እላለሁ?" ብሎ ጠየቀ። ከመጠየቅ የበለጠ ዋጋ ያለው ነው። ዋናው መንስኤ ከተገኘ በኋላ በደርዘን የሚቆጠሩ ተመሳሳይ ስህተቶች በአንድ ጊዜ ይፈታሉ. AI በዚህ ሰንሰለት አመክንዮ ላይ ጥሩ ነው፡ ውሂቡን ከግቤት ወደ ውፅዓት ይከተሉ እና የት እንደሚፈርስ እንዲያስብ ይጠይቁት።

ሶስት ጥቃቅን ጉዳዮች

ጉዳይ 1 - በ 10 ደቂቃ ውስጥ 2 ሰዓት ሥራ. አንድ ገንቢ በአንድ የተወሰነ የሳምሰንግ ሞዴል ላይ ብቻ የተበላሸውን ሳንካ በመፈለግ 2 ሰዓት አሳልፏል። የብልሽት ምዝግብ ማስታወሻ (የግል ቦታዎችን በማጽዳት) ለ AI ሰጠ; YZ ስህተቱ በተለየ የካሜራ መፍታት ወደ ሚከሰተው የማህደረ ትውስታ ፍሰት ይጠቁማል ብሏል። ከፍንጭው ጋር, ምክንያቱ በ 10 ደቂቃዎች ውስጥ ተገኝቷል. AI ፍለጋውን አፋጥኗል፣ የሰው ልጅ መፍትሄውን አረጋግጧል።

ጉዳይ 2 - ጸጥ ያለዉ ሳንካ ተመልሶ መጥቷል። አንድ ቡድን እሱን ለመያዝ የ AI ጥቆማን በመጠቀም ተደጋጋሚ ብልሽትን ጸጥ አሰኝቷል። ብልሽቱ ቆሟል፣ ነገር ግን ተጠቃሚዎች "መረጃ አያስቀምጥም" ብለው ማጉረምረም ጀመሩ። እውነተኛው ችግር (የውሂብ ጎታ ግንኙነት) አሁንም እዚያ ስለነበር፣ አሁን የማይታይ ሆኗል። መንስኤው ከተገኘ በኋላ ሁለቱም ብልሽቶች እና የውሂብ መጥፋት ተፈትተዋል. ትምህርት፡ ዝምታ መፍትሔ አይሆንም።

ጉዳይ 3 - በመዝገብ ውስጥ የወጣ መረጃ። በመተግበሪያው የብልሽት ምዝግብ ማስታወሻዎች ውስጥ የተጠቃሚዎች ሙሉ ስም እና ስልክ ቁጥሮች መፃፋቸውን ኦዲት አረጋግጧል። ገንቢዎች እነዚህን ምዝግብ ማስታወሻዎች ወደ AI እና ቋሚ ሳንካዎች በመደበኛነት ለጥፈዋል። ስለዚህ የግል መረጃ ለወራት እየወጣ ነው። የምዝግብ ማስታወሻዎች ተሸፍነዋል እና ሂደቱ ተስተካክሏል. ትምህርት፡ ሚስጥራዊነት በማረም ጊዜም ቢሆን ተግባራዊ ይሆናል።

ደካማ ጥያቄ / ጠንካራ ጥያቄ

ደካማ ጥያቄ፡ "ይህ ስህተት ለምን ይከሰታል? [የቁልል ዱካ]"

ጠንካራ ጥያቄ፡- "ይህ ብልሽት በእኔ አንድሮይድ መተግበሪያ ላይ እየደረሰ ነው። አውድ፡- እያደረግሁ ነው፡ ተጠቃሚው ወደ ጋሪው ሲጨምር ከምርት ዝርዝር - በአንዳንድ መሳሪያዎች ላይ ብቻ ዝቅተኛ የ RAM ሞዴሎች - ተዛማጅ ኮድ፡ [ViewModel እና Repository part] - የብልሽት መዝገብ (የግል መረጃ ተጠርጓል)፡ [የቁልል ዱካ] 3 ሊሆኑ የሚችሉ ዋና ዋና መንስኤዎችን ዘርዝር። ለእያንዳንዱ፡1) እንዴት አረጋግጫለሁ፣ (2) ዝምታዎ የት እንደሆነ እርግጠኛ አይደሉም።

ሊገለበጡ የሚችሉ አብነቶች

የብልሽት ትንተና አብነት፡"የሚከተለውን ብልሽት ይተንትኑ። አውድ፡ [ምን እያደረጉ ነው፣ የትኛው መሣሪያ/ሥሪት]። ተዛማጅ ኮድ፡ [ኮድ]። የብልሽት መዝገብ (የግል ውሂብ ተጠርጓል)፡ [መከታተያ]። ለእያንዳንዳቸው 3 ሊሆኑ የሚችሉ ዋና ዋና ምክንያቶችን እና ማረጋገጫን + ቋሚ አስተካክል። እንዲሁም ምልክቱን ጸጥ የሚያደርጉ መንገዶችን ምልክት ያድርጉ።

የስር መንስኤ አብነት፡ "ይህ ዋጋ የሚመጣው [ከንቱ/ሐሰት] ሳይታሰብ ነው። ከመግቢያው እስከዚህ ነጥብ ድረስ ያለውን የውሂብ ፍሰት ተከተል፡ የት ሊጠፋ ወይም ሊበላሽ ይችላል? በእያንዳንዱ ደረጃ የት ማረጋገጥ እንዳለብኝ ንገረኝ። [ኮድ]"

የምዝግብ ማስታወሻ አብነት: "ይህን የምዝግብ ማስታወሻ ውፅዓት ይተርጉሙ: ምን አይነት ክስተቶች በቅደም ተከተል እንደተከሰቱ, ያልተለመደው የት ነው, ከስህተቱ በፊት የመጨረሻው ጤናማ እርምጃ ምንድን ነው? [ሎግ - የግል መረጃ ተጠርጓል]"

የማባዛት አብነት፡ "ይህን ስህተት በአስተማማኝ ሁኔታ ለማባዛት ምን አይነት እርምጃዎች፣ መሳሪያዎች እና ውሂቦች መሞከር አለብኝ? ስህተቱን በተቻለ መጠን በቅደም ተከተል ይዘርዝሩ። [መግለጫ]"

የተለመዱ ስህተቶች

  • ከአውድ-ነጻ ቁልል መከታተያ መስጠት። ያለ ተዛማጅ ኮድ እና ሁኔታ፣ AI አጠቃላይ ትንበያ ያደርጋል።
  • የግል ውሂብን ከምዝግብ ማስታወሻዎች ጋር ወደ AI መለጠፍ። ምስጢራዊነትን መጣስ; በመጀመሪያ ጭምብል.
  • ምልክቱን ጸጥ ያድርጉት። ብልሽቱን በሙከራ መደበቅ ዋናውን ችግር ይተዋል እና አዳዲስ ችግሮችን ይፈጥራል።
  • የመጀመሪያውን ጥቆማ ሳያረጋግጡ ተግባራዊ ማድረግ. የ AI ምርመራ መላምት ነው; በኮድ ውስጥ ያረጋግጡ።
  • በ emulator ውስጥ እንደገና ለማራባት መሞከር. አንዳንድ ስህተቶች የሚታዩት በትክክለኛው መሳሪያ/ሁኔታ ላይ ብቻ ነው።
  • ከተስተካከለ በኋላ እንደገና አለመሞከር. ማስተካከያው ሌላ ነገር ሰብሮ ሊሆን ይችላል; መመለሻን ያረጋግጡ።

በማጠቃለያው

AI ከሚበልጡባቸው ቦታዎች አንዱ የብልሽት ምዝግብ ማስታወሻዎችን ማንበብ እና ሊሆኑ የሚችሉ ምክንያቶችን መለየት ነው; አውድ በሚሰጥበት ጊዜ የምርመራው ጥራት በእጅጉ ይሻሻላል. ነገር ግን የመጨረሻው ምርመራ እና እርማት የሰው ነው፡ የ AI ሃሳብ መላምት ነው፣ በኮድ እና በሙከራ የተረጋገጠ። ዓላማው ምልክቱን ዝም ማሰኘት ሳይሆን ዋናውን ምክንያት ለመፍታት ነው; የዝምታው ስህተት አብዛኛውን ጊዜ በሌላ መልኩ ይመለሳል። የብልሽት ምዝግብ ማስታወሻዎች የግል ውሂብ ሊይዙ ይችላሉ; ለ AI ከመስጠትዎ በፊት ጭምብል ያድርጉት እና ከመጀመሪያው ጀምሮ የግል ውሂብን በምዝግብ ማስታወሻዎችዎ ውስጥ አይጻፉ።

የመተግበሪያ ተግባር

ያለዎትን የብልሽት ምዝግብ ማስታወሻ ይውሰዱ (ወይም ከ AI ያመነጩትን ናሙና) በውስጡ ማንኛውንም የግል/የተለየ ዳታ ይሸፍኑ እና በ"ብልሽት ትንተና አብነት" ለ AI ይስጡት። የ AI ዝርዝሮች ትክክለኛ ጥገናዎች እንደሆኑ እና ዝም የሚያሰኙት የትኞቹ ምክንያቶች እንደሆኑ ይለዩ። የመረጡትን ቋሚ ጥገና ይተግብሩ እና ስህተቱ እንደጠፋ እና ምንም አዲስ ችግሮች እንዳልተፈጠሩ ያረጋግጡ።

የማረጋገጫ ዝርዝር

  • [ ] የብልሽት ምዝግብ ማስታወሻውን ከሚመለከተው ኮድ እና ሁኔታ አውድ ጋር ሰጥቻለሁ
  • [] በምዝግብ ማስታወሻዎች ውስጥ የግል/የተለየ ውሂብን ደብቄ ነበር።
  • [] ለስር መንስኤ እና ለዘለቄታው እንዲስተካከል AI ጠየኩት እንጂ ዝም አላለም
  • [ ] ምርመራውን በኮድ እና በፈተና አረጋግጫለሁ፣ በጭፍን አልተተገበርኩም
  • [] ከጥገናው በኋላ ስህተቱ እንደጠፋ እና ምንም አይነት መሻሻል እንደሌለ ሞከርኩ።
  • [ ] የእኔ መተግበሪያ የግል ውሂቡን በምዝግብ ማስታወሻዎቹ ውስጥ እንደማይጽፍ አረጋግጣለሁ።