InterSystems IRIS හි Python Gateway

මෙම ලිපිය InterSystems IRIS දත්ත වේදිකාව සඳහා විවෘත මූලාශ්‍ර ප්‍රජා ව්‍යාපෘතියක් වන Python Gateway ගැන වේ. මෙම ව්‍යාපෘතිය මඟින් ඔබට Python (බොහෝ දත්ත විද්‍යාඥයින් සඳහා ප්‍රධාන පරිසරය) තුළ නිර්මාණය කරන ලද ඕනෑම යන්ත්‍ර ඉගෙනුම් ඇල්ගොරිතමයක් සංවිධානය කිරීමට ඉඩ සලසයි, InterSystems IRIS වේදිකාවේ අනුවර්තන, රොබෝ විශ්ලේෂණාත්මක AI / ML විසඳුම් ඉක්මනින් නිර්මාණය කිරීමට බොහෝ සූදානම් කළ පුස්තකාල භාවිතා කරයි. මෙම ලිපියෙන්, මම ඔබට පෙන්වන්නම් InterSystems IRIS හට පයිතන් ක්‍රියාවලි මෙහෙයවීම, කාර්යක්ෂම ද්වි-මාර්ග දත්ත හුවමාරුව සහ බුද්ධිමත් ව්‍යාපාර ක්‍රියාවලි නිර්මාණය කළ හැකි ආකාරය.

සැලැස්ම

  1. හැඳින්වීම
  2. මෙවලම්.
  3. ස්ථාපනය
  4. API.
  5. අන්තර් ක්රියාකාරී හැකියාව.
  6. Jupyter සටහන් පොත.
  7. නිගමනය.
  8. සබැඳි.
  9. MLToolkit.

හැඳින්වීම

Python යනු සංවර්ධක ඵලදායිතාව සහ කේත කියවීමේ හැකියාව වැඩිදියුණු කිරීම කෙරෙහි අවධානය යොමු කරන ඉහළ මට්ටමේ, පොදු කාර්ය ක්‍රමලේඛන භාෂාවකි. මෙම ලිපි මාලාවේදී, මම InterSystems IRIS වේදිකාවේ Python භාෂාව භාවිතා කිරීමේ හැකියාව ගැන කතා කරමි, මෙම ලිපියේ ප්‍රධාන අවධානය වන්නේ යන්ත්‍ර ඉගෙනුම් ආකෘති නිර්මාණය කිරීම සහ යෙදීම සඳහා Python භාෂාවක් ලෙස භාවිතා කිරීමයි.

යන්ත්‍ර ඉගෙනීම (ML) යනු කෘත්‍රිම බුද්ධි ක්‍රම කාණ්ඩයකි, එහි ලාක්ෂණික ලක්ෂණය වන්නේ ගැටලුවකට සෘජු විසඳුම නොව, බොහෝ සමාන ගැටළු විසඳීමේ ක්‍රියාවලියේදී ඉගෙනීමයි.

යන්ත්‍ර ඉගෙනීමේ ඇල්ගොරිතම සහ ආකෘති වඩ වඩාත් සුලභ වෙමින් පවතී. මේ සඳහා බොහෝ හේතු ඇත, නමුත් ඒ සියල්ල ප්රවේශය, සරල බව සහ ප්රායෝගික ප්රතිඵල ලබා ගැනීම සඳහා පැමිණේ. Clustering හෝ neural Network Modeling පවා නව තාක්ෂණයක් ද?

ඇත්ත වශයෙන්ම නැත, නමුත් වර්තමානයේ එක් ආකෘතියක් ක්රියාත්මක කිරීම සඳහා ලක්ෂ ගණනක් කේත පේළි ලිවීමට අවශ්ය නොවන අතර, ආකෘති නිර්මාණය කිරීම සහ භාවිතා කිරීම සඳහා වන පිරිවැය කුඩා හා කුඩා වෙමින් පවතී.

මෙවලම් පරිණාමය වෙමින් පවතී - අපට සම්පුර්ණයෙන්ම GUI නැඹුරු වූ AI/ML මෙවලම් නොමැති අතර, BI (කේත ලිවීමේ සිට රාමු සහ GUI නැඹුරු වින්‍යාසගත කළ හැකි විසඳුම් භාවිතා කිරීම දක්වා) වැනි වෙනත් බොහෝ තොරතුරු පද්ධති සමඟ අප දැක ඇති ප්‍රගතිය ද දක්නට ලැබේ. AI/ML නිර්මාණ මෙවලම් තුළ. අපි දැනටමත් කේතය ලිවීමේ අදියර පසු කර ඇති අතර අද අපි ආකෘති ගොඩනැගීම සහ පුහුණු කිරීම සඳහා රාමු භාවිතා කරමු.

අවසාන පරිශීලකයා තම නිශ්චිත දත්ත මත ආකෘතිය පුහුණු කිරීම අවසන් කළ යුතු පූර්ව-පුහුණු ආකෘතියක් ප්‍රචාරණය කිරීමේ හැකියාව වැනි අනෙකුත් වැඩිදියුණු කිරීම්, යන්ත්‍ර ඉගෙනීම යෙදීම ආරම්භ කිරීම පහසු කරයි. මෙම දියුණුව වෘත්තිකයන්ට සහ සමස්තයක් ලෙස සමාගම් සඳහා යන්ත්‍ර ඉගෙනීම ඉගෙනීම වඩාත් පහසු කරයි.

අනෙක් අතට, අපි වැඩි වැඩියෙන් දත්ත එකතු කරමු. InterSystems IRIS වැනි ඒකාබද්ධ දත්ත වේදිකාවක් සමඟින්, මෙම සියලු තොරතුරු වහාම සකස් කර යන්ත්‍ර ඉගෙනුම් ආකෘති සඳහා ආදානය ලෙස භාවිතා කළ හැක.

වලාකුළට සංක්‍රමණය වීමත් සමඟ, AI/ML ව්‍යාපෘති දියත් කිරීම වෙන කවරදාටත් වඩා පහසු වේ. අපට පරිභෝජනය කළ හැක්කේ අපට අවශ්‍ය සම්පත් පමණි. එපමණක්ද නොව, වලාකුළු වේදිකා මගින් පිරිනමනු ලබන සමාන්තරකරණයට ස්තූතිවන්ත වන අතර, අපතේ යන කාලය ඉතිරි කර ගත හැකිය.

නමුත් ප්රතිඵල ගැන කුමක් කිව හැකිද? දේවල් වඩාත් සංකීර්ණ වන්නේ මෙතැනදීය. ආකෘති ගොඩනැගීම සඳහා බොහෝ මෙවලම් තිබේ, මම ඊළඟට සාකච්ඡා කරමි. හොඳ ආකෘතියක් ගොඩනැගීම පහසු නැත, නමුත් ඊළඟට කුමක් කළ යුතුද? ව්‍යාපාරයක් විසින් ආකෘතිය භාවිතා කිරීමෙන් ලාභ ලැබීම ද සුළුපටු නොවන කාර්යයකි. ගැටලුවේ මූලය වන්නේ විශ්ලේෂණාත්මක සහ ගණුදෙණු කිරීමේ වැඩ බර සහ දත්ත ආකෘති වෙන් කිරීමයි. අපි ආකෘතියක් පුහුණු කරන විට, අපි සාමාන්යයෙන් ඓතිහාසික දත්ත මත එය කරන්නෙමු. නමුත් ඉදිකරන ලද ආකෘතිය සඳහා ස්ථානය ගනුදෙනු දත්ත සැකසුම් තුළ ඇත. අපි දිනකට වරක් එය ක්‍රියාත්මක කරන්නේ නම් හොඳම වංචාකාරී ගනුදෙනු හඳුනාගැනීමේ ආකෘතියෙන් ඇති ප්‍රයෝජනය කුමක්ද? වංචාකාරයෝ සල්ලි දීලා ගිහින් ගොඩක් කල්. අපි ඉතිහාස දත්ත මත ආකෘතිය පුහුණු කළ යුතු නමුත්, නව එන දත්ත මත එය තථ්‍ය කාලීනව යෙදිය යුතු අතර එමඟින් අපගේ ව්‍යාපාර ක්‍රියාවලීන් ආකෘතිය විසින් කරන ලද අනාවැකි අනුව ක්‍රියා කළ හැකිය.

ML මෙවලම් කට්ටලය යනු එය සිදු කරන මෙවලම් කට්ටලයකි: ආකෘති එකට ගෙන ඒම සහ ගනුදෙනු පරිසරයක් වන අතර එමඟින් ඔබ ගොඩනඟන ආකෘතීන් ඔබේ ව්‍යාපාර ක්‍රියාවලීන් තුළ පහසුවෙන් භාවිතා කළ හැකිය. Python Gateway ML මෙවලම් කට්ටලයේ කොටසක් වන අතර Python භාෂාව සමඟ ඒකාබද්ධ කිරීම සපයයි (R Gateway ට සමාන, ML මෙවලම් කට්ටලයේ කොටසක් වීම R භාෂාව සමඟ ඒකාබද්ධ කිරීම සපයයි).

මෙවලම්

අපි ඉදිරියට යාමට පෙර, අපි පසුව භාවිතා කරන පයිතන් මෙවලම් සහ පුස්තකාල කිහිපයක් විස්තර කිරීමට මම කැමතියි.

තාක්ෂණය

  • Python යනු අර්ථකථනය කරන ලද, පොදු අරමුණු, ඉහළ මට්ටමේ ක්‍රමලේඛන භාෂාවකි. භාෂාවේ ප්රධාන වාසිය වන්නේ ගණිතමය, ML සහ AI පුස්තකාල විශාල පුස්තකාලයකි. ObjectScript මෙන්ම, එය වස්තු-නැඹුරු භාෂාවකි, නමුත් සෑම දෙයක්ම ස්ථිතිකව නොව ගතිකව අර්ථ දක්වා ඇත. එසේම සියල්ල වස්තුවකි. පසුකාලීන ලිපි භාෂාව සමඟ හුරුපුරුදු බවක් උපකල්පනය කරයි. ඔබට ඉගෙනීම ආරම්භ කිරීමට අවශ්‍ය නම්, ආරම්භ කිරීමට මම නිර්දේශ කරමි ලියකියවිලි.
  • අපගේ ඊළඟ අභ්‍යාස සඳහා, සකසන්න පයිතන් 3.6.7 64බිට්.
  • IDE: මම භාවිතා කරමි පයිහර්ම්, නමුත් පොදුවේ много. ඔබ Atelier භාවිතා කරන්නේ නම්, Python සංවර්ධකයින් සඳහා Eclipse ප්ලගිනයක් ඇත. ඔබ VS කේතය භාවිතා කරන්නේ නම්, Python සඳහා දිගුවක් තිබේ.
  • සටහන් පොත: IDE වෙනුවට, ඔබට සබැඳි සටහන් පොත්වල ඔබේ ස්ක්‍රිප්ට් ලිවීමට සහ බෙදා ගැනීමට හැකිය. ඒවායින් වඩාත් ජනප්රිය වන්නේ බ්‍රහස්පති.

පුස්තකාල

යන්ත්‍ර ඉගෙනුම් පුස්තකාලවල (අර්ධ) ලැයිස්තුවක් මෙන්න:

  • නැම්පි - නිශ්චිත ගණනය කිරීම් සඳහා මූලික පැකේජයක්.
  • පාණ්ඩස් - ඉහළ කාර්ය සාධන දත්ත ව්යුහයන් සහ දත්ත විශ්ලේෂණ මෙවලම්.
  • මැට්ප්ලොට්ලිබ් - ප්රස්ථාර නිර්මාණය කිරීම.
  • මුහුදු වෙරළ - matplotlib මත පදනම්ව දත්ත දෘශ්‍යකරණය.
  • Sklearn - යන්ත්‍ර ඉගෙනීමේ ක්‍රම.
  • XGBoost — Gradient Boosting ක්‍රමවේදය තුළ යන්ත්‍ර ඉගෙනීමේ ඇල්ගොරිතම.
  • ජෙන්සිම් - එන්එල්පී.
  • කෙරස් - ස්නායුක ජාල.
  • ආතන්‍ය ප්‍රවාහය යන්ත්‍ර ඉගෙනුම් ආකෘති නිර්මාණය කිරීමේ වේදිකාවකි.
  • පයිටෝර්ච් Python මත අවධානය යොමු කරන යන්ත්‍ර ඉගෙනුම් ආකෘති නිර්මාණය කිරීමේ වේදිකාවකි.
  • සර්පයෙක් - විවිධ මාදිලි වලින් PMML.

AI/ML තාක්ෂණයන් ව්‍යාපාරය වඩාත් කාර්යක්ෂම සහ අනුවර්තනය කරයි. එපමණක් නොව, අද මෙම තාක්ෂණයන් සංවර්ධනය කිරීමට සහ ක්රියාත්මක කිරීමට පහසු වෙමින් පවතී. AI/ML තාක්ෂණයන් සහ ඒවා ඔබේ සංවිධානයේ වර්ධනයට උපකාර කළ හැකි ආකාරය ගැන ඉගෙනීම ආරම්භ කරන්න.

ස්ථාපනය

Python Gateway ස්ථාපනය කිරීමට සහ භාවිතා කිරීමට ක්‍රම කිහිපයක් තිබේ:

  • මෙහෙයුම් පද්ධතිය
    • හි Windows සඳහා
    • ලිනක්ස්
    • මැක්
  • Docker
    • DockerHub වෙතින් රූපය භාවිතා කරන්න
    • ඔබේම පෙනුම සාදන්න

ස්ථාපන ක්රමය කුමක් වුවත්, ඔබට මූලාශ්ර කේතය අවශ්ය වනු ඇත. කේතය බාගත කිරීමට ඇති එකම ස්ථානය වේ පිටුව නිකුත් කරයි. එහි පරීක්ෂා කරන ලද ස්ථාවර නිකුතු අඩංගු වේ, නවතම එක ලබා ගන්න. මේ මොහොතේ එය 0.8, නමුත් කාලයත් සමඟ නව ඒවා වනු ඇත. ගබඩාව ක්ලෝන කරන්න/බාගන්න එපා, නවතම නිකුතුව බාගන්න.

මෙහෙයුම් පද්ධතිය

ඔබ මෙහෙයුම් පද්ධතියක Python Gateway ස්ථාපනය කරන්නේ නම්, පළමුව (මෙහෙයුම් පද්ධතිය කුමක් වුවත්) ඔබට Python ස්ථාපනය කිරීමට සිදුවේ. මේ වෙනුවෙන්:

  1. Python 3.6.7 64 bit ස්ථාපනය කරන්න. පෙරනිමි නාමාවලියෙහි Python ස්ථාපනය කිරීම රෙකමදාරු කරනු ලැබේ.
  2. මොඩියුලය ස්ථාපනය කරන්න dill: pip install dill.
  3. ObjectScript කේතය බාගන්න (i.e. do $system.OBJ.ImportDir("C:InterSystemsReposPythoniscpy", "*.cls", "c",,1)) නිෂ්පාදන සහිත ඕනෑම ප්රදේශයකට. ඔබට නිෂ්පාදන සඳහා දැනට පවතින ප්‍රදේශයක් අවශ්‍ය නම්, ධාවනය කරන්න: write ##class(%EnsembleMgr).EnableNamespace($Namespace, 1).
  4. ස්ථානය ඇමතුම් DLL/SO/DYLIB ෆෝල්ඩරයට bin ඔබගේ InterSystems IRIS උදාහරණය. පුස්තකාල ගොනුව ආපසු එන මාර්ගයෙහි තිබිය යුතුය write ##class(isc.py.Callout).GetLib().

හි Windows සඳහා

  1. පරිසර විචල්‍යය බවට වග බලා ගන්න PYTHONHOME Python 3.6.7 වෙත යොමු කරයි.
  2. පද්ධති පරිසර විචල්‍යය බවට වග බලා ගන්න PATH විචල්‍යයක් අඩංගු වේ PYTHONHOME (හෝ එය පෙන්වා දෙන නාමාවලිය).

Linux (Debian/Ubuntu)

  1. පරිසර විචල්‍යය දැයි පරීක්ෂා කරන්න PATH අඩංගු වේ /usr/lib и /usr/lib/x86_64-linux-gnu. ගොනුව භාවිතා කරන්න /etc/environment පරිසර විචල්‍යයන් සැකසීමට.
  2. දෝෂ ඇති අවස්ථාවක undefined symbol: _Py_TrueStruct සැකසුම සකසන්න PythonLib. ද ඇත Readme දෝශ නිරාකරණ අංශයක් ඇත.

මැක්

  1. දැනට සහය දක්වන්නේ python 3.6.7 පමණි python.org. විචල්යය පරීක්ෂා කරන්න PATH.

ඔබ පරිසර විචල්‍ය වෙනස් කර ඇත්නම්, ඔබේ InterSystems නිෂ්පාදනය නැවත ආරම්භ කරන්න.

Docker

බහාලුම් භාවිතා කිරීම වාසි ගණනාවක් ඇත:

  • අතේ ගෙන යා හැකි හැකියාව
  • ඵලදායීතාවය
  • පරිවරණය
  • සැහැල්ලු බව
  • වෙනස් නොවන බව

මේක බලන්න ලිපි මාලාවක් InterSystems නිෂ්පාදන සමඟ Docker භාවිතා කිරීම පිළිබඳ වැඩි විස්තර සඳහා.

සියලුම Python Gateway ගොඩනැගීම් දැනට බහාලුම් පදනම් වේ. 2019.4.

නිමි රූපය

ධාවනය: docker run -d -p 52773:52773 --name irispy intersystemscommunity/irispy-community:latestInterSystems IRIS Community Edition සමඟ Python Gateway බාගත කර ධාවනය කිරීමට. එච්චරයි.

ඔබේම පෙනුම සාදන්න

ඩොකර් රූපයක් තැනීමට, ගබඩාවේ මූලයේ ධාවනය කරන්න: docker build --force-rm --tag intersystemscommunity/irispy:latest ..
පෙරනිමියෙන්, රූපය මත පදනම්ව රූපය ගොඩනගා ඇත store/intersystems/iris-community:2019.4.0.383.0, කෙසේ වෙතත් ඔබට විචල්‍යය සැකසීමෙන් මෙය වෙනස් කළ හැක IMAGE.
InterSystems IRIS වෙතින් ගොඩනැගීමට ධාවනය කරන්න: `docker build --build-arg IMAGE=store/intersystems/iris:2019.4.0.383.0 --force-rm --tag intersystemscommunity/irispy:latest'.

ඊට පසු, ඔබට ඩොකර් රූපය ධාවනය කළ හැකිය:

docker run -d 
  -p 52773:52773 
  -v /<HOST-DIR-WITH-iris.key>/:/mount 
  --name irispy 
  intersystemscommunity/irispy:latest 
  --key /mount/iris.key

ඔබ InterSystems IRIS Community Edition මත පදනම් වූ රූපයක් භාවිතා කරන්නේ නම්, ඔබට යතුරක් සඳහන් කිරීමට අවශ්‍ය නොවේ.

අදහස්

  • පරීක්ෂණ ක්රියාවලිය isc.py.test.Process තාවකාලික නාමාවලියකට පින්තූර ගණනාවක් සුරකියි. ඔබට මෙම මාර්ගය සවිකර ඇති නාමාවලියකට වෙනස් කිරීමට අවශ්‍ය විය හැක. මෙය සිදු කිරීම සඳහා, සැකසුම සංස්කරණය කරන්න WorkingDir සවිකර ඇති නාමාවලිය සඳහන් කිරීම.
  • ටර්මිනලය වෙත ප්‍රවේශ වීමට, ධාවනය කරන්න: docker exec -it irispy sh.
  • පුරනය වීමෙන් පද්ධති කළමනාකරණ ද්වාරයට පිවිසෙන්න SuperUser/SYS.
  • කන්ටේනරයක් නැවැත්වීමට, ධාවනය කරන්න: docker stop irispy && docker rm --force irispy.

ස්ථාපනය පරීක්ෂා කිරීම

ඔබ Python Gateway ස්ථාපනය කළ පසු, එය ක්‍රියාත්මක වේද යන්න පරීක්ෂා කිරීම වටී. මෙම කේතය InterSystems IRIS පර්යන්තයේ ධාවනය කරන්න:

set sc = ##class(isc.py.Callout).Setup() 
set sc = ##class(isc.py.Main).SimpleString("x='HELLO'", "x", , .var).
write var

ප්රතිඵලය විය යුතුය HELLO - පයිතන් විචල්‍යයේ අගය x. ආපසු තත්ත්වය නම් sc වැරදීමක් හෝ var හිස්, පරීක්ෂා කරන්න Readme - දෝශ නිරාකරණ අංශය.

API

Python Gateway ස්ථාපනය කර ඇති අතර එය ක්‍රියාත්මක වන බව ඔබ තහවුරු කර ඇත. එය භාවිතා කිරීම ආරම්භ කිරීමට කාලයයි!
Python හි ප්‍රධාන අතුරු මුහුණත වේ isc.py.Main. එය පහත ක්‍රම කාණ්ඩ ඉදිරිපත් කරයි (සියල්ල ආපසු %Status):

  • කේතය ක්රියාත්මක කිරීම
  • දත්ත හුවමාරුව
  • සහනාධාර

කේතය ක්රියාත්මක කිරීම

මෙම ක්‍රම මඟින් ඔබට අත්තනෝමතික පයිතන් කේතය ක්‍රියාත්මක කිරීමට ඉඩ සලසයි.

SimpleString

SimpleString ප්රධාන ක්රමය වේ. එයට විකල්ප තර්ක 4 ක් අවශ්‍ය වේ:

  • code ක්‍රියාත්මක කිරීමට ඇති කේත රේඛාව වේ. රේඛා පෝෂක චරිතය: $c(10).
  • returnVariable ආපසු හැරවිය යුතු විචල්‍යයේ නම වේ.
  • serialization - අනුක්‍රමික කරන්නේ කෙසේද returnVariable. 0 - string (පෙරනිමිය), 1 - repr.
  • result - අගය ලියා ඇති විචල්‍යයට ByRef යොමුව returnVariable.

ඉහත අපි කර ඇත්තේ:

set sc = ##class(isc.py.Main).SimpleString("x='HELLO'", "x", , .var).

මෙම උදාහරණයේදී, අපි පයිතන් විචල්‍යයකට පවරමු x අර්ථය Hello සහ Python විචල්‍යයක අගය නැවත ලබා දීමට අවශ්‍යයි x ObjectScript විචල්‍යයකට var.

ExecuteCode

ExecuteCode යනු ආරක්ෂිත සහ අඩු සීමා සහිත විකල්පයකි SimpleString.
InterSystems IRIS වේදිකාවේ රේඛා අක්ෂර 3කට සීමා වී ඇති අතර, ඔබට දිගු කේත කැබැල්ලක් ක්‍රියාත්මක කිරීමට අවශ්‍ය නම්, ඔබට ප්‍රවාහ භාවිතා කළ යුතුය.
එයට තර්ක දෙකක් අවශ්‍ය වේ:

  • code - ක්‍රියාත්මක කළ යුතු පයිතන් කේතයේ තන්තුවක් හෝ ප්‍රවාහයක්.
  • variable - (විකල්ප) ක්රියාත්මක කිරීමේ ප්රතිඵලය පවරයි code මෙම Python විචල්‍යය.

භාවිතා කිරීමට යෝජනා කරන්න:

set sc = ##class(isc.py.Main).ExecuteCode("2*3", "y").

මෙම උදාහරණයේදී, අපි 2 න් 3 ගුණ කර ප්රතිඵලය Python විචල්යයක ගබඩා කරමු y.

දත්ත හුවමාරුව

Python වෙත සහ ඉන් දත්ත ලබා දෙන්න.

Python -> InterSystems IRIS

ඔබට අවශ්‍ය අනුක්‍රමිකකරණය අනුව InterSystems IRIS හි Python විචල්‍යයක අගය ලබා ගැනීමට ක්‍රම 4ක් ඇත:

  • String සරල දත්ත වර්ග සහ නිදොස්කරණය සඳහා.
  • Repr සරල වස්තූන් ගබඩා කිරීම සහ නිදොස් කිරීම සඳහා.
  • JSON InterSystems IRIS පැත්තේ පහසු දත්ත හැසිරවීම සඳහා.
  • Pickle වස්තූන් සුරැකීමට.

මෙම ක්‍රම මඟින් ඔබට පයිතන් වෙතින් විචල්‍යයන් තන්තුවක් ලෙස හෝ ප්‍රවාහ ලෙස ලබා ගත හැක.

  • GetVariable(variable, serialization, .stream, useString) - ලබා ගන්න serialization විචල්ය variable в stream. එසේ නම් useString 1 වන අතර අනුක්‍රමිකකරණය තන්තුවක තබා ඇත, එවිට නූලක් ආපසු ලබා දෙනු ලැබේ, ප්‍රවාහයක් නොවේ.
  • GetVariableJson(variable, .stream, useString) — විචල්‍යයක JSON අනුක්‍රමිකකරණය ලබා ගන්න.
  • GetVariablePickle(variable, .stream, useString, useDill) -විචල්‍යයක අච්චාරු (හෝ ඩිල්) අනුක්‍රමිකයක් ලබා ගන්න.

අපි බලමු අපේ variable එක ගන්න y.

set sc = ##class(isc.py.Main).GetVariable("y", , .val, 1)
write val
>6

InterSystems IRIS -> Python

InterSystems IRIS වෙතින් Python වෙත දත්ත පූරණය කරමින්.

  • ExecuteQuery(query, variable, type, namespace) - දත්ත කට්ටලයක් නිර්මාණය කරයි (pandas dataframe හෝ list) sql විමසුමෙන් එය python විචල්‍යයට සකසන්න variable. ප්ලාස්ටික් බෑගය isc.py ප්රදේශයේ තිබිය යුතුය namespace - ඉල්ලීම එහි ක්‍රියාත්මක වේ.
  • ExecuteGlobal(global, variable, type, start, end, mask, labels, namespace) - ගෝලීය දත්ත පූරණය කරයි global subscript එකෙන් start කිරීමට end Python වල type variable ලෙස type: list, හෝ පැන්ඩා dataframe. විකල්ප තර්ක විස්තරය mask සහ labels පන්ති ලියකියවිලි සහ ගබඩාවෙන් ලබා ගත හැකිය දත්ත හුවමාරු ලේඛන.
  • ExecuteClass(class, variable, type, start, end, properties, namespace) - පන්ති දත්ත පූරණය කරයි class id එකෙන් start කිරීමට end Python වල type variable ලෙස type: list, හෝ පැන්ඩා dataframe. properties — දත්ත කට්ටලයට පැටවිය යුතු පන්ති ගුණාංග ලැයිස්තුව (කොමාවෙන් වෙන් කර ඇත). වෙස් මුහුණු සහය දක්වයි * и ?. පෙරනිමිය - * (සියලු දේපල). දේපල %%CLASSNAME නොසලකා හැර ඇත.
  • ExecuteTable(table, variable, type, start, end, properties, namespace) - වගු දත්ත පූරණය කරයි table id එකෙන් start කිරීමට end පයිතන් තුළ.

ExecuteQuery - විශ්වීය (ඕනෑම වලංගු SQL විමසුමක් පයිතන් වෙත යවනු ලැබේ). කෙසේ වුවද, ExecuteGlobal සහ ඔහුගේ ආවරණ ExecuteClass и ExecuteTable සීමාවන් ගණනාවක් සමඟ වැඩ කරන්න. ඒවා ඉතා වේගවත් (ODBC ධාවකයට වඩා 3-5 ගුණයකින් වේගවත් වන අතර වඩා 20 ගුණයකින් වේගවත් වේ ExecuteQuery) වැඩි විස්තර තුළ දත්ත හුවමාරු ලේඛන.
මෙම ක්‍රම සියල්ලම ඕනෑම ප්‍රදේශයකින් දත්ත මාරු කිරීමට සහාය වේ. ප්ලාස්ටික් බෑගය isc.py ඉලක්කගත ප්රදේශයේ තිබිය යුතුය.

ExecuteQuery

ExecuteQuery(request, variable, type, namespace) - ඕනෑම වලංගු SQL විමසුමක ප්‍රතිඵල Python වෙත ලබා දීම. මෙය මන්දගාමී දත්ත හුවමාරු ක්‍රමයයි. නම් භාවිතා කරන්න ExecuteGlobal සහ එහි දවටන නොමැත.

තර්ක:

  • query - sql විමසුම.
  • variable - දත්ත ලියා ඇති පයිතන් විචල්‍යයේ නම.
  • type - list නැත්නම් පැන්ඩා dataframe.
  • namespace - ඉල්ලීම ක්රියාත්මක කරනු ලබන ප්රදේශය.

ExecuteGlobal

ExecuteGlobal(global, variable, type, start, end, mask, labelels, namespace) - ගෝලීය පයිතන් වෙත ගමන් කිරීම.

තර්ක:

  • global ගෝලීය තොරව නම වේ ^
  • variable - දත්ත ලියා ඇති පයිතන් විචල්‍යයේ නම.
  • type - list නැත්නම් පැන්ඩා dataframe.
  • start - ගෝලීය පළමු දායකත්වය. අනිවාර්යයෙන් %Integer.
  • end ගෝලීය අවසාන දායකත්වය වේ. අනිවාර්යයෙන් %Integer.
  • mask - ගෝලීය වටිනාකම් වල වෙස් මුහුණ. වෙස් මුහුණ ගෝලීය ක්ෂේත්‍ර සංඛ්‍යාවට වඩා කෙටි විය හැක (එවිට අවසානයේ ඇති ක්ෂේත්‍ර මඟ හරිනු ලැබේ). වෙස් මුහුණ හැඩ ගන්වන්නේ කෙසේද:
    • + අගය එලෙසම ලබා දෙන්න.
    • - අගය මඟහරින්න.
    • b - බූලියන් වර්ගය (0 - False, ඉතිරි සියල්ල - True).
    • d — දිනය ($ horolog සිට, Windows මත 1970 සිට, Linux මත 1900 සිට).
    • t - වේලාව ($ horolog, මධ්‍යම රාත්‍රියෙන් පසු තත්පර).
    • m — කාල මුද්‍රාව (වසර-මාස-දින පැය:MINUTE:SECOND ආකෘති තන්තුව).
  • labels - %තීරු නාම ලැයිස්තුව. පළමු මූලද්රව්යය වන්නේ උපසිරැසියේ නමයි.
  • namespace - ඉල්ලීම ක්රියාත්මක කරනු ලබන ප්රදේශය.

ExecuteClass

ඔතා ExecuteGlobal. පන්ති නිර්වචනය මත පදනම්ව ඇමතුමක් සූදානම් කරයි ExecuteGlobal සහ ඔහුට කතා කරයි.

ExecuteClass(class, variable, type, start, end, properties, namespace) - පන්ති දත්ත පයිතන් වෙත යැවීම.

තර්ක:

  • class - පන්තියේ නම
  • variable - දත්ත ලියා ඇති පයිතන් විචල්‍යයේ නම.
  • type - list නැත්නම් පැන්ඩා dataframe.
  • start - ආරම්භක හැඳුනුම්පත.
  • end - අවසාන හැඳුනුම්පත
  • properties — දත්ත කට්ටලයට පැටවිය යුතු පන්ති ගුණාංග ලැයිස්තුව (කොමාවෙන් වෙන් කර ඇත). වෙස් මුහුණු සහය දක්වයි * и ?. පෙරනිමිය - * (සියලු දේපල). දේපල %%CLASSNAME නොසලකා හැර ඇත.
  • namespace - ඉල්ලීම ක්රියාත්මක කරනු ලබන ප්රදේශය.

වර්ග ගුණාංග හැර අනෙකුත් සියලුම ගුණාංග සම්මත වේ %Date, %Time, %Boolean и %TimeStamp - ඒවා අනුරූප පයිතන් පන්ති වලට පරිවර්තනය වේ.

ExecuteTable

ඔතා ExecuteClass. වගුවේ නම පන්ති නාමයකට පරිවර්තනය කර ඇමතුම් ලබා දෙයි ExecuteClass. අත්සන:

ExecuteTable(table, variable, type, start, end, properties, namespace) - වගු දත්ත පයිතන් වෙත යැවීම.

තර්ක:

  • table - වගුවේ නම.
    අනෙක් සියලුම තර්ක එලෙසම සම්මත වේ. ExecuteClass.

සටහන්

  • ExecuteGlobal, ExecuteClass и ExecuteTable සමානව වේගයෙන් වැඩ කරන්න.
  • ExecuteGlobal වඩා 20 ගුණයක් වේගවත් ExecuteQuery විශාල දත්ත කට්ටල මත (මාරු කාලය > 0.01 තත්පර).
  • ExecuteGlobal, ExecuteClass и ExecuteTable මෙම ව්‍යුහය සමඟ ගෝලීය වශයෙන් වැඩ කරන්න: ^global(key) = $lb(prop1, prop2, ..., propN) එහිදී key පූර්ණ සංඛ්යාවකි.
  • සඳහා ExecuteGlobal, ExecuteClass и ExecuteTable සහය දක්වන අගය පරාසය %Date පරාසයට අනුරූප වේ mktime සහ OS මත රඳා පවතීකවුළු: 1970-01-01, ලිනක්ස් 1900-01-01, මැක්) භාවිත %TimeStampමෙම පරාසයෙන් පිටත දත්ත යැවීමට හෝ pandas dataframe ලෙස භාවිතා කරන්න මෙම සීමාව ලැයිස්තුව සඳහා පමණි.
  • සඳහා ExecuteGlobal, ExecuteClass и ExecuteTable දත්ත මූලාශ්‍රය (ගෝලීය, පන්තිය හෝ වගුව) සහ විචල්‍යය හැර අනෙකුත් සියලුම තර්ක විකල්ප වේ.

උදාහරණ

පරීක්ෂණ පන්තිය isc.py.test.පුද්ගලයා සියලුම දත්ත හුවමාරු විකල්පයන් පෙන්නුම් කරන ක්‍රමයක් අඩංගු වේ:

set global = "isc.py.test.PersonD"
set class = "isc.py.test.Person"
set table = "isc_py_test.Person"
set query = "SELECT * FROM isc_py_test.Person"

// Общие аргументы
set variable = "df"
set type = "dataframe"
set start = 1
set end = $g(^isc.py.test.PersonD, start)

// Способ 0: ExecuteGlobal без аргументов
set sc = ##class(isc.py.Main).ExecuteGlobal(global, variable _ 0, type)

// Способ 1: ExecuteGlobal с аргументами    
// При передаче глобала названия полей задаются вручную
// globalKey - название сабсткрипта 
set labels = $lb("globalKey", "Name", "DOB", "TS", "RandomTime", "AgeYears", "AgeDecimal", "AgeDouble", "Bool")

// mask содержит на 1 элемент меньше чем labels потому что "globalKey" - название сабскипта
// Пропускаем %%CLASSNAME
set mask = "-+dmt+++b"

set sc = ##class(isc.py.Main).ExecuteGlobal(global, variable _ 1, type, start, end, mask, labels)

// Способ 2: ExecuteClass
set sc = ##class(isc.py.Main).ExecuteClass(class, variable _ 2, type, start, end)

// Способ 3: ExecuteTable
set sc = ##class(isc.py.Main).ExecuteTable(table, variable _ 3, type, start, end)

// Способ 4: ExecuteTable
set sc = ##class(isc.py.Main).ExecuteQuery(query, variable _ 4, type)

ඇමතුම් ක්රමය do ##class(isc.py.test.Person).Test() සියලුම දත්ත හුවමාරු ක්‍රම ක්‍රියා කරන ආකාරය බැලීමට.

උපකාරක ක්රම

  • GetVariableInfo(variable, serialization, .defined, .type, .length) - විචල්‍යය පිළිබඳ තොරතුරු ලබා ගන්න: එය අර්ථ දක්වා තිබේද, පන්තිය සහ අනුක්‍රමික දිග.
  • GetVariableDefined(variable, .defined) - විචල්‍යය අර්ථ දක්වා තිබේද යන්න.
  • GetVariableType(variable, .type) - විචල්‍යයේ පන්තිය ලබා ගන්න.
  • GetStatus() - පයිතන් පැත්තේ ඇති අවසාන ව්‍යතිරේකය ලබාගෙන ඉවත් කරන්න.
  • GetModuleInfo(module, .imported, .alias) - මොඩියුල විචල්‍ය සහ ආනයන තත්ත්වය ලබා ගන්න.
  • GetFunctionInfo(function, .defined, .type, .docs, .signature, .arguments) - කාර්යය පිළිබඳ තොරතුරු ලබා ගන්න.

අන්තර් ක්රියාකාරී හැකියාව

ඔබ පර්යන්තයෙන් Python Gateway අමතන්නේ කෙසේදැයි ඉගෙන ගෙන ඇත, දැන් අපි එය නිෂ්පාදනයේදී භාවිතා කිරීමට පටන් ගනිමු. මෙම මාදිලියේ පයිතන් සමඟ අන්තර් ක්‍රියා කිරීමේ පදනම වේ isc.py.ens.Operation. එය අපට ඉඩ දෙයි:

  • පයිතන් කේතය ක්‍රියාත්මක කරන්න
  • පයිතන් සන්දර්භය සුරකින්න/ප්‍රතිසාධනය කරන්න
  • Python වෙතින් දත්ත පැටවීම සහ ලබා ගැනීම

මූලික වශයෙන්, Pyhton මෙහෙයුමක් යනු දවටනයකි isc.py.Main. මෙහෙයුම් isc.py.ens.Operation InterSystems IRIS නිෂ්පාදන වලින් පයිතන් ක්‍රියාවලිය සමඟ අන්තර්ක්‍රියා කිරීමට ඉඩ සලසයි. ඉල්ලීම් පහකට සහය දක්වයි:

  • isc.py.msg.ExecutionRequest පයිතන් කේතය ක්‍රියාත්මක කිරීමට. ආපසු පැමිණේ isc.py.msg.ExecutionResponse ක්රියාත්මක කිරීමේ ප්රතිඵලය සහ ඉල්ලූ විචල්යවල අගයන් සමඟ.
  • isc.py.msg.StreamExecutionRequest පයිතන් කේතය ක්‍රියාත්මක කිරීමට. ආපසු පැමිණේ isc.py.msg.StreamExecutionResponse ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය සහ ඉල්ලූ විචල්‍යවල අගයන්. ඇනලොග් isc.py.msg.ExecutionRequest, නමුත් නූල් වෙනුවට ප්‍රවාහ පිළිගෙන ආපසු ලබා දෙයි.
  • isc.py.msg.QueryRequest SQL විමසුමක් ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය මාරු කිරීමට. ආපසු පැමිණේ Ens.Response.
  • isc.py.msg.GlobalRequest/isc.py.msg.ClassRequest/isc.py.msg.TableRequest ගෝලීය/පන්ති/වගු දත්ත සම්මත කිරීමට. ආපසු පැමිණේ Ens.Response.
  • isc.py.msg.SaveRequest පයිතන් සන්දර්භය සුරැකීමට. ආපසු පැමිණේ Ens.StringResponse සන්දර්භය හැඳුනුම්පත සමඟ.
  • isc.py.msg.RestoreRequest පයිතන් සන්දර්භය ප්‍රතිසාධනය කිරීමට.

    ඊට අමතරව, isc.py.ens.Operation සැකසුම් දෙකක් ඇත:

    • Initializer - අතුරු මුහුණත ක්රියාත්මක කරන පන්තියක් තෝරා ගැනීම isc.py.init.Abstract. එය කාර්යයන්, මොඩියුල, පන්ති, සහ ඒ හා සමාන පැටවීමට භාවිතා කළ හැක. ක්රියාවලිය ආරම්භ වන විට එය එක් වරක් ක්රියාත්මක වේ.
    • PythonLib - (ලිනක්ස් පමණි) ඔබ ඇරඹුම් දෝෂ දකින්නේ නම්, එහි අගය සකසන්න libpython3.6m.so එසේත් නැතිනම් පයිතන් පුස්තකාලයට යන සම්පූර්ණ මාර්ගයේ පවා.

ව්යාපාර ක්රියාවලීන් නිර්මාණය කිරීම

ව්‍යාපාර ක්‍රියාවලි සංවර්ධනයට පහසුකම් සපයන පන්ති දෙකක් තිබේ:

  • isc.py.ens.ProcessUtils විචල්‍ය ආදේශන සහිත ක්‍රියාකාරකම් වලින් අනුසටහන් උපුටා ගැනීමට ඔබට ඉඩ සලසයි.
  • isc.py.util.BPEmulator Python සමඟ ව්‍යාපාර ක්‍රියාවලි පරීක්ෂා කිරීම පහසු කරයි. එයට වත්මන් ක්‍රියාවලියේදී ව්‍යාපාර ක්‍රියාවලියක් (පයිතන් කොටස්) ක්‍රියාත්මක කළ හැකිය.

විචල්ය ආදේශනය

සියලුම ව්‍යාපාරික ක්‍රියාවලීන් උරුම වී ඇත isc.py.ens.ProcessUtils, ක්රමය භාවිතා කළ හැකිය GetAnnotation(name) ක්‍රියාකාරකම් විවරණයක වටිනාකම එහි නමෙන් ලබා ගැනීමට. ක්‍රියාකාරකම් විවරණයෙහි පයිතන් වෙත යැවීමට පෙර InterSystems IRIS පැත්තෙන් ඇගයීමට ලක් කෙරෙන විචල්‍යයන් අඩංගු විය හැක. විචල්‍ය ආදේශනය සඳහා වන වාක්‍ය ඛණ්ඩය මෙන්න:

  • ${class:method:arg1:...:argN} - ක්රමය ඇමතුම
  • #{expr} - ObjectScript භාෂාවෙන් කේතය ක්‍රියාත්මක කරන්න.

පරීක්ෂණ ව්‍යාපාර ක්‍රියාවලියේ උදාහරණයක් තිබේ isc.py.test.Process, උදාහරණයක් ලෙස, ක්රියාකාරිත්වය තුළ Correlation Matrix: Graph: f.savefig(r'#{process.WorkDirectory}SHOWCASE${%PopulateUtils:Integer:1:100}.png'). මෙම උදාහරණයේ:

  • #{process.WorkDirectory} වස්තුවේ WorkDirectory දේපල ආපසු ලබා දෙයි process, එය පන්තියේ නිදසුනකි isc.py.test.Process එම. වත්මන් ව්යාපාර ක්රියාවලිය.
  • ${%PopulateUtils:Integer:1:100} ක්රමයක් කැඳවයි Integer පන්ති %PopulateUtils, තර්ක සම්මත කිරීම 1 и 100, පරාසය තුළ සසම්භාවී පූර්ණ සංඛ්‍යාවක් ආපසු ලබා දීම 1...100.

ව්යාපාර ක්රියාවලිය පරීක්ෂා කරන්න

පරීක්ෂණ නිෂ්පාදනය සහ පරීක්ෂණ ව්‍යාපාර ක්‍රියාවලිය Python Gateway හි කොටසක් ලෙස පෙරනිමියෙන් ලබා ගත හැක. ඒවා භාවිතා කිරීමට:

  1. OS පර්යන්තයේ ධාවනය: pip install pandas matplotlib seaborn.
  2. InterSystems IRIS පර්යන්තයේ, ධාවනය කරන්න: do ##class(isc.py.test.CannibalizationData).Import() පරීක්ෂණ දත්ත ජනනය කිරීමට.
  3. නිෂ්පාදන දියත් කරන්න isc.py.test.Production.
  4. ඉල්ලීම් වර්ගය යවන්න Ens.Request в isc.py.test.Process.

ඒ සියල්ල එකට වැඩ කරන්නේ කෙසේදැයි බලමු. විවෘත isc.py.test.Process BPL සංස්කාරකයේ:

InterSystems IRIS හි Python Gateway

කේතය ක්රියාත්මක කිරීම

වඩාත්ම වැදගත් ඇමතුම වන්නේ පයිතන් කේතය ක්‍රියාත්මක කිරීමයි:

InterSystems IRIS හි Python Gateway

භාවිතා කරන ලද ඉල්ලීම isc.py.msg.ExecutionRequest, මෙන්න එහි ගුණාංග:

  • Code - පයිතන් කේතය.
  • SeparateLines - ක්‍රියාත්මක කිරීම සඳහා කේතය රේඛා වලට බෙදිය යුතුද යන්න. $c(10) (n) නූල් වෙන් කිරීමට භාවිතා කරයි. සම්පූර්ණ පණිවිඩය එකවර සැකසීමට නිර්දේශ නොකරන බව සලකන්න, මෙම කාර්යය සැකසීම සඳහා පමණක් වේ def සහ සමාන බහු රේඛා ප්‍රකාශන. පෙරනිමිය 0.
  • Variables ප්‍රතිචාරයට එකතු කෙරෙන විචල්‍යයන් කොමාවෙන් වෙන් කළ ලැයිස්තුවකි.
  • Serialization - අපට රිටන් කිරීමට අවශ්‍ය විචල්‍ය අනුක්‍රමික කරන්නේ කෙසේද. විකල්ප: Str, Repr, JSON, Pickle и Dill, පෙරනිමිය Str.

අපගේ නඩුවේදී, අපි දේපල පමණක් සකස් කරමු Code, එවිට අනෙකුත් සියලුම ගුණාංග ඒවායේ පෙරනිමි අගයන් භාවිතා කරයි. අපි එය ඇමතීමෙන් සකස් කළෙමු process.GetAnnotation("Import pandas"), විචල්‍ය ආදේශනය සිදු කිරීමෙන් පසු ධාවන වේලාවේදී විවරණයක් ලබා දෙයි. අවසානයේ කේතය import pandas as pd පයිතන් වෙත ලබා දෙනු ඇත. GetAnnotation බහු-රේඛා පයිතන් ස්ක්‍රිප්ට් ලබා ගැනීම සඳහා ප්‍රයෝජනවත් විය හැක, නමුත් කේතය ලබා ගැනීමේ මෙම ක්‍රමයට සීමාවන් නොමැත. ඔබට දේපල සකස් කළ හැකිය Code ඔබට පහසු ඕනෑම ආකාරයකින්.

විචල්‍ය ලබා ගැනීම

භාවිතා කිරීම තවත් රසවත් අභියෝගයකි isc.py.msg.ExecutionRequest - Correlation Matrix: Tabular:

InterSystems IRIS හි Python Gateway

එය පයිතන් පැත්තේ සහසම්බන්ධ අනුකෘතිය ගණනය කර විචල්‍යය උපුටා ගනී corrmat ඉල්ලීම් ගුණාංග සැකසීමෙන් JSON ආකෘතියෙන් InterSystems IRIS වෙත ආපසු:

  • Variables: "corrmat"
  • Serialization: "JSON"

අපට Visual Trace හි ප්‍රතිඵල දැකිය හැක:

InterSystems IRIS හි Python Gateway

අපට BP හි මෙම අගය අවශ්‍ය නම්, එය මේ ආකාරයෙන් ලබා ගත හැකිය: callresponse.Variables.GetAt("corrmat").

දත්ත හුවමාරුව

ඊළඟට, අපි InterSystems IRIS සිට Python වෙත දත්ත මාරු කිරීම ගැන කතා කරමු, සියලු දත්ත හුවමාරු ඉල්ලීම් අතුරු මුහුණත ක්රියාත්මක කරයි isc.py.msg.DataRequest, එය පහත ගුණාංග සපයයි:

  • Variable යනු දත්ත ලියා ඇති පයිතන් විචල්‍යයකි.
  • Type - විචල්ය වර්ගය: dataframe (pandas dataframe) හෝ list.
  • Namespace - අපට දත්ත ලැබෙන ප්‍රදේශය. ප්ලාස්ටික් බෑගය isc.py මෙම ප්රදේශයේ තිබිය යුතුය. මෙය නිෂ්පාදන සහාය නොමැති ප්‍රදේශයක් විය හැකිය.

මෙම අතුරුමුහුණත මත පදනම්ව, ඉල්ලීම් පන්ති 4 ක් ක්රියාත්මක වේ:

  • isc.py.msg.QueryRequest - දේපල සකසන්න Query SQL විමසුම යැවීමට.
  • isc.py.msg.ClassRequest - දේපල සකසන්න Class පන්ති දත්ත සම්මත කිරීමට.
  • isc.py.msg.TableRequest - දේපල සකසන්න Table වගු දත්ත සම්මත කිරීමට.
  • isc.py.msg.GlobalRequest - දේපල සකසන්න Global ගෝලීය දත්ත හුවමාරු කිරීමට.

පරීක්ෂණ ක්රියාවලියේදී, ක්රියාකාරිත්වය දෙස බලන්න RAWකොහෙද isc.py.msg.QueryRequest ක්රියාවෙන් පෙන්වා ඇත.

InterSystems IRIS හි Python Gateway

පයිතන් සන්දර්භය සුරැකීම/ප්‍රතිස්ථාපනය කිරීම

අවසාන වශයෙන්, අපට පයිතන් සන්දර්භය InterSystems IRIS හි ගබඩා කළ හැක, මෙය සිදු කිරීම සඳහා යවන්න isc.py.msg.SaveRequest තර්ක සමඟ:

  • Mask - වෙස් මුහුණ තෘප්තිමත් කරන විචල්‍ය පමණක් සුරැකේ. සහාය දුන්නා * и ?. උදාහරණයක්: "Data*, Figure?"... පෙරනිමිය *.
  • MaxLength - ගබඩා කර ඇති විචල්යයේ උපරිම දිග. විචල්‍යයක අනුක්‍රමිකකරණය දිගු නම්, එය නොසලකා හරිනු ලැබේ. ඕනෑම දිගක විචල්‍යයන් ලබා ගැනීමට 0 ලෙස සකසන්න. පෙරනිමිය $$$MaxStringLength.
  • Name - සන්දර්භය නම (විකල්ප).
  • Description - සන්දර්භය පිළිබඳ විස්තරය (විකල්ප).

ප්‍රතිලාභ Ens.StringResponse с Id සුරකින ලද සන්දර්භය. පරීක්ෂණ ක්රියාවලියේදී, ක්රියාකාරිත්වය දෙස බලන්න Save Context.

අදාළ ඉල්ලීම isc.py.msg.RestoreRequest InterSystems IRIS සිට Python වෙත සන්දර්භයක් පූරණය කරයි:

  • ContextId සන්දර්භය හඳුනාගැනීමයි.
  • Clear - ප්‍රතිසාධනය කිරීමට පෙර සන්දර්භය ඉවත් කරන්න.

ජුපිටර් නෝට්බුක්

ජුපිටර් නෝට්බුක් කේතය, දෘශ්‍යකරණයන් සහ පෙළ අඩංගු සටහන් පොත් නිර්මාණය කිරීමට සහ ප්‍රකාශ කිරීමට ඔබට ඉඩ සලසන විවෘත මූලාශ්‍ර වෙබ් යෙදුමකි. Python Gateway ඔබට BPL ක්‍රියාවලි Jupyter Notebook එකක් ලෙස බැලීමට සහ සංස්කරණය කිරීමට ඉඩ සලසයි. සාමාන්‍ය Python 3 executor දැනට භාවිතා වන බව සලකන්න.

මෙම දිගුව උපකල්පනය කරන්නේ විවරණවල පයිතන් කේතය අඩංගු වන අතර පෙර මාතෘකා ලෙස ක්‍රියාකාරකම් නම් භාවිතා කරන බවයි. Jupyter Notebook හි PythonGateway ව්‍යාපාර ක්‍රියාවලි දියුණු කිරීමට දැන් හැකියාව ඇත. හැකි දේ මෙන්න:

  • නව ව්‍යාපාර ක්‍රියාවලි නිර්මාණය කරන්න
  • ව්‍යාපාර ක්‍රියාවලි මකන්න
  • නව ක්රියාකාරකම් නිර්මාණය කරන්න
  • ක්රියාකාරකම් වෙනස් කරන්න
  • ක්‍රියාකාරකම් මකන්න

මෙහි demo වීඩියෝ. සහ සමහර තිරපිටපත්:

ක්‍රියාවලි ගවේෂකය

InterSystems IRIS හි Python Gateway

ක්‍රියාවලි සංස්කාරකය

InterSystems IRIS හි Python Gateway

ස්ථාපනය

  1. ඔබට InterSystems IRIS 2019.2+ අවශ්‍ය වනු ඇත.
  2. PythonGateway v0.8+ ස්ථාපනය කරන්න (අවශ්‍ය වන්නේ පමණි isc.py.util.Jupyter, isc.py.util.JupyterCheckpoints и isc.py.ens.ProcessUtils).
  3. ගබඩාවෙන් ObjectScript කේතය යාවත්කාලීන කරන්න.
  4. ක්‍රියාත්මක කරන්න do ##class(isc.py.util.Jupyter).Install() සහ විමසීම් අනුගමනය කරන්න.

ප්‍රලේඛනය.

සොයා ගැනීම්

MLToolkit යනු ආකෘති සහ ගනුදෙනු පරිසරයක් ඒකාබද්ධ කිරීම අරමුණු කරගත් මෙවලම් කට්ටලයක් වන අතර එමඟින් සාදන ලද ආකෘති පහසුවෙන් ඔබේ ව්‍යාපාර ක්‍රියාවලීන්හි භාවිතා කළ හැකිය. Python Gateway MLToolkit හි කොටසක් වන අතර Python භාෂාව සමඟ ඒකාබද්ධ වීම සපයයි, Python (බොහෝ දත්ත විද්‍යාඥයින් සඳහා ප්‍රධාන පරිසරය) තුළ නිර්මාණය කරන ලද ඕනෑම යන්ත්‍ර ඉගෙනීමේ ඇල්ගොරිතමයක් සැකසීමට ඔබට ඉඩ සලසයි, අනුවර්තන, රොබෝ විශ්ලේෂණාත්මක AI / ඉක්මනින් නිර්මාණය කිරීම සඳහා සූදානම් කළ පුස්තකාල ගණනාවක් භාවිතා කරන්න. InterSystems වේදිකාව IRIS මත ML විසඳුම්.

යොමු

MLToolkit

MLToolkit පරිශීලක කණ්ඩායම යනු InterSystems ආයතනික GitHub සංවිධානයේ කොටසක් ලෙස නිර්මාණය කරන ලද පුද්ගලික GitHub ගබඩාවකි. එය Python Gateway ඇතුළුව MLToolkit සංරචක ස්ථාපනය කරන, ඉගෙන ගන්නා හෝ දැනටමත් භාවිතා කරන බාහිර පරිශීලකයින් වෙත යොමු කෙරේ. සමූහයට අලෙවිකරණ, නිෂ්පාදන, වෛද්‍ය සහ වෙනත් බොහෝ කර්මාන්ත ක්ෂේත්‍රවල ක්‍රියාත්මක කළ අවස්ථා ගණනාවක් (මූලාශ්‍ර කේතය සහ පරීක්ෂණ දත්ත සමඟ) ඇත. ML Toolkit පරිශීලක කණ්ඩායමට සම්බන්ධ වීමට කරුණාකර පහත ලිපිනයට කෙටි විද්‍යුත් තැපෑලක් එවන්න: [විද්‍යුත් ආරක්‍ෂිත] සහ ඔබේ ලිපියේ පහත තොරතුරු ඇතුළත් කරන්න:

  • GitHub පරිශීලක නාමය
  • සංවිධානය (ඔබ වැඩ කරන හෝ ඉගෙනුම ලබන)
  • තනතුර (ඔබේ සංවිධානයේ ඔබේ සැබෑ තත්ත්වය, එක්කෝ "ශිෂ්‍ය" හෝ "ස්වාධීන").
  • රට

ලිපිය කියවා ඇති සහ කෘත්‍රිම බුද්ධිය සහ යන්ත්‍ර ඉගෙනීමේ යාන්ත්‍රණ සංවර්ධනය කිරීම හෝ සත්කාරකත්වය සැපයීම සඳහා වේදිකාවක් ලෙස InterSystems IRIS ගැන උනන්දුවක් දක්වන අය සඳහා, ඔබේ ව්‍යවසායයට උනන්දුවක් දැක්විය හැකි අවස්ථා සාකච්ඡා කිරීමට අපි ඔබට ආරාධනා කරමු. අපි ඔබේ ව්‍යවසායයේ අවශ්‍යතා පහසුවෙන් විශ්ලේෂණය කර ක්‍රියාකාරී සැලැස්මක් ඒකාබද්ධව තීරණය කරන්නෙමු; අපගේ AI/ML විශේෂඥ කණ්ඩායමේ ඊමේල් ලිපිනය අමතන්න - [විද්‍යුත් ආරක්‍ෂිත].

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න