పైథాన్‌లో హగ్గింగ్ ఫేస్ ట్రాన్స్‌ఫార్మర్‌లను ఎలా ఉపయోగించాలి

Paithan Lo Hagging Phes Trans Pharmar Lanu Ela Upayogincali



హగ్గింగ్ ఫేస్ ఓపెన్ సోర్స్ అయిన ఆర్టిఫిషియల్ ఇంటెలిజెంట్ కమ్యూనిటీగా గుర్తించబడింది మరియు ఇది భాషా నమూనాలతో (సహజ భాషా ప్రాసెసింగ్) కమ్యూనికేట్ చేయడానికి లేదా శిక్షణ ఇవ్వడానికి సహాయపడే అన్ని ముఖ్యమైన ఫ్రేమ్‌వర్క్‌లు, టూల్స్, మోడల్‌లు మరియు ఆర్కిటెక్చర్‌లను అందిస్తుంది. హగ్గింగ్ ఫేస్ ట్రాన్స్‌ఫార్మర్లు అనేది పైథాన్‌లో ప్రీ-ట్రైన్డ్ లాంగ్వేజ్ ప్రాసెసింగ్ మోడల్‌లను అందించడంలో సహాయపడే ఒక భాషా నిర్మాణం. హగ్గింగ్ ఫేస్ నుండి ఈ ట్రాన్స్‌ఫార్మర్‌లు విస్తృత శ్రేణి డేటాసెట్‌లు మరియు లేయర్డ్ APIలను అందిస్తాయి, ఇవి ప్రోగ్రామర్లు తమ లైబ్రరీ ప్యాకేజీలతో ప్రీ-ట్రైన్డ్ మోడల్‌లతో సులభంగా పరస్పర చర్యను రూపొందించడంలో సహాయపడతాయి.

వాక్యనిర్మాణం

అత్యాధునిక హగ్గింగ్ ఫేస్ ట్రాన్స్‌ఫార్మర్‌లు అనేక రకాల ముందస్తు శిక్షణ పొందిన మోడల్‌లను కలిగి ఉన్నాయి. కింది వాటిలో జాబితా చేయబడిన వివిధ భాషా నమూనాలకు ఈ నమూనాలు వర్తించవచ్చు:

  • ఈ ట్రాన్స్‌ఫార్మర్‌లు టెక్స్ట్‌ని వివిధ భాషల్లో ప్రాసెస్ చేయవచ్చు మరియు టెక్స్ట్ వర్గీకరణ, ప్రశ్నించడం మరియు సమాధానమివ్వడం, టెక్స్ట్‌ను వివిధ భాషలకు అనువాదం చేయడం మరియు టెక్స్ట్ యొక్క తరం వంటి విభిన్న పనులను చేయగలవు.
  • మేము ఈ ట్రాన్స్‌ఫార్మర్‌లను హగ్గింగ్ ఫేస్‌లో ఆబ్జెక్ట్ డిటెక్షన్ మరియు స్పీచ్-బేస్డ్ టాస్క్‌ల వంటి దృష్టి-ఆధారిత వర్గీకరణ పనుల కోసం కూడా ఉపయోగించవచ్చు, ఉదా. స్పీకర్ వర్గీకరణ లేదా ప్రసంగ గుర్తింపు/గుర్తింపు.

హగ్గింగ్ ఫేస్ నుండి ట్రాన్స్‌ఫార్మర్‌లలో TensorFlow, PyTorch, ONNX మొదలైనవి ఉన్నాయి. ఈ ట్రాన్స్‌ఫార్మర్‌ల కోసం ప్యాకేజీని ఇన్‌స్టాల్ చేసే సింటాక్స్ కోసం, మేము కింది ఆదేశాన్ని ఉపయోగిస్తాము:







$ పిప్ ట్రాన్స్‌ఫార్మర్‌లను ఇన్‌స్టాల్ చేయండి

ఇప్పుడు, మేము వేర్వేరు భాషా ప్రాసెసింగ్ పనుల కోసం హగ్గింగ్ ఫేస్ ట్రాన్స్‌ఫార్మర్ నుండి మోడల్‌లను ఉపయోగించే విభిన్న ఉదాహరణలను ప్రయత్నించడానికి ప్రయత్నిస్తాము.



ఉదాహరణ 1: హగ్గింగ్ ఫేస్ ట్రాన్స్‌ఫార్మర్‌లను ఉపయోగించి టెక్స్ట్ జనరేషన్

ఈ ఉదాహరణ టెక్స్ట్ జనరేషన్ కోసం ట్రాన్స్‌ఫార్మర్‌లను ఉపయోగించే పద్ధతిని కవర్ చేస్తుంది. టెక్స్ట్ జనరేషన్ కోసం, మేము ట్రాన్స్‌ఫార్మర్ నుండి ప్రీ-ట్రైన్డ్ టెక్స్ట్ జనరేషన్ మోడల్‌ని ఉపయోగిస్తాము మరియు దిగుమతి చేస్తాము. ట్రాన్స్‌ఫార్మర్‌లో ప్రాథమిక లైబ్రరీ ఉంది, దీనిని 'పైప్‌లైన్స్' అని పిలుస్తారు. ఈ పైప్‌లైన్‌లు ట్రాన్స్‌ఫార్మర్‌ల కోసం ముందుగా శిక్షణ పొందిన మోడల్‌లకు ఇన్‌పుట్‌గా అందించడానికి అవసరమైన అన్ని ప్రీ మరియు పోస్ట్ అవసరమైన ప్రాసెసింగ్ చేయడం ద్వారా పని చేస్తాయి.



పైథాన్ టెర్మినల్‌లో 'ట్రాన్స్‌ఫార్మర్స్' యొక్క లైబ్రరీ ప్యాకేజీని ఇన్‌స్టాల్ చేయడం ద్వారా మేము ఉదాహరణను కోడింగ్ చేయడం ప్రారంభిస్తాము. ట్రాన్స్‌ఫార్మర్ ప్యాకేజీని డౌన్‌లోడ్ చేయడానికి, 'ప్యాకేజీ పేరుతో పిప్ ఇన్‌స్టాల్ చేయండి, అనగా ట్రాన్స్‌ఫార్మర్'ని ఉపయోగించండి. మేము ట్రాన్స్‌ఫార్మర్ ప్యాకేజీని డౌన్‌లోడ్ చేసి, ఇన్‌స్టాల్ చేసిన తర్వాత, ట్రాన్స్‌ఫార్మర్ నుండి “పైప్‌లైన్స్” ప్యాకేజీని దిగుమతి చేయడం ద్వారా మేము ముందుకు వెళ్తాము. పైప్‌లైన్ డేటాను మోడల్‌కు అందించడానికి ముందు ప్రాసెస్ చేయడానికి ఉపయోగించబడుతుంది.





మేము pprint నుండి 'ప్రింట్' ను దిగుమతి చేస్తాము. ఈ ప్యాకేజీ టెక్స్ట్ జనరేషన్ మోడల్ నుండి అవుట్‌పుట్‌ను మరింత చదవగలిగే, నిర్మాణాత్మకమైన మరియు బాగా ఫార్మాట్ చేయబడిన రూపంలో ప్రింట్ చేయడానికి ఇన్‌స్టాల్ చేయబడింది. లేకపోతే, మనం “ప్రింట్()” ఫంక్షన్‌ని ఉపయోగిస్తే, అది అవుట్‌పుట్‌ను ఒకే లైన్‌లో ప్రదర్శిస్తుంది, ఇది బాగా ఫార్మాట్ చేయబడదు మరియు సులభంగా చదవబడుతుంది. టెక్స్ట్ జనరేషన్ మోడల్‌లు మేము మొదట ఇన్‌పుట్‌గా మోడల్‌కి అందించిన టెక్స్ట్‌ను రూపొందించడానికి లేదా జోడించడానికి సహాయపడతాయి.

ట్రాన్స్‌ఫార్మర్ నుండి శిక్షణ పొందిన మోడల్‌ను కాల్ చేయడానికి, మేము పైప్‌లైన్() ఫంక్షన్‌ను ఉపయోగిస్తాము, ఇది రెండు పారామితులను ఇన్‌పుట్‌గా కలిగి ఉంటుంది. మొదటిది ఎంచుకున్న పని పేరును నిర్దేశిస్తుంది మరియు రెండవది ట్రాన్స్‌ఫార్మర్ నుండి మోడల్ పేరు. ఈ దృష్టాంతంలో, ఎంచుకున్న పని టెక్స్ట్ జనరేషన్. ట్రాన్స్‌ఫార్మర్ నుండి మనం ఉపయోగించే ప్రీ-ట్రైన్డ్ మోడల్ “gpt”.



పైప్‌లైన్ ఫంక్షన్‌ని ఉపయోగించిన తర్వాత, దాని కోసం అదనపు వచనాన్ని రూపొందించడానికి మా మోడల్‌కు ఇవ్వాలనుకుంటున్న ఇన్‌పుట్‌ను మేము నిర్ణయిస్తాము. అప్పుడు, మేము ఈ ఇన్‌పుట్‌ను “task_pipeline()” ఫంక్షన్‌కి పంపుతాము. ఈ ఫంక్షన్ ఇన్‌పుట్, అవుట్‌పుట్ యొక్క గరిష్ట పొడవు మరియు అవుట్‌పుట్ దాని ఇన్‌పుట్ పారామితులుగా కలిగి ఉండవలసిన వాక్యాల సంఖ్యను తీసుకోవడం ద్వారా మోడల్ కోసం అవుట్‌పుట్‌ను సృష్టిస్తుంది.

'ఇది భాషా నమూనా' అని మేము ఇన్‌పుట్ ఇస్తాము. మేము అవుట్‌పుట్ యొక్క గరిష్ట పొడవును “30”కి మరియు అవుట్‌పుట్‌లోని వాక్యాల సంఖ్యను “3”కి పరిష్కరిస్తాము. ఇప్పుడు, మన మోడల్ నుండి ఉత్పత్తి చేయబడిన ఫలితాలను ప్రదర్శించడానికి మేము pprint() ఫంక్షన్‌ని పిలుస్తాము.

!పిప్ ట్రాన్స్‌ఫార్మర్‌లను ఇన్‌స్టాల్ చేయండి

ట్రాన్స్‌ఫార్మర్ల నుండి పైప్‌లైన్‌ను దిగుమతి చేసుకుంటుంది
pprint దిగుమతి pprint నుండి

SELECTED_TASK = 'టెక్స్ట్-జనరేషన్'
మోడల్ = 'gpt2'
టాస్క్ = పైప్‌లైన్(f'{SELECTED_TASK}', మోడల్ = మోడల్)

INPUT = 'ఇది భాషా నమూనా'
OUt_put = పని(INPUT, max_length = 30, num_return_sequences=3)

pprint (OUt_put)

మునుపు పేర్కొన్న కోడ్ యొక్క స్నిప్పెట్ మరియు అవుట్‌పుట్ నుండి, మోడల్ మనం అందించిన ఇన్‌పుట్‌కు సంబంధించిన అదనపు సమాచారం/టెక్స్ట్‌ని ఉత్పత్తి చేస్తుందని మనం చూడవచ్చు.

ఉదాహరణ 2: ట్రాన్స్‌ఫార్మర్‌ల నుండి పైప్‌లైన్‌లను ఉపయోగించి వచన వర్గీకరణ

మునుపటి ఉదాహరణ ట్రాన్స్‌ఫార్మర్లు మరియు వాటి ప్యాకేజీ పైప్‌లైన్‌లను ఉపయోగించి ఇన్‌పుట్‌కు సంబంధించిన అదనపు వచనాన్ని రూపొందించే పద్ధతిని కవర్ చేసింది. పైప్‌లైన్‌లతో టెక్స్ట్ వర్గీకరణను ఎలా నిర్వహించాలో ఈ ఉదాహరణ చూపిస్తుంది. టెక్స్ట్ వర్గీకరణ అనేది ఒక నిర్దిష్ట తరగతి సభ్యునిగా మోడల్‌కు అందించబడే ఇన్‌పుట్‌ను గుర్తించే ప్రక్రియ, ఉదా. సానుకూల లేదా ప్రతికూల.

మేము మొదట ట్రాన్స్‌ఫార్మర్ల నుండి పైప్‌లైన్‌లను దిగుమతి చేస్తాము. అప్పుడు, మేము 'పైప్లైన్ ()' ఫంక్షన్ అని పిలుస్తాము. మేము మోడల్ పేరును పాస్ చేస్తాము, ఇది మా సందర్భంలో, దాని పారామితులకు 'టెక్స్ట్ వర్గీకరణ'. పైప్‌లైన్‌ని ఉపయోగించి మోడల్‌ని పేర్కొన్న తర్వాత, ఇప్పుడు మనం దానిని 'క్లాసిఫైయర్' అని పేరు పెట్టవచ్చు. ఈ సమయం వరకు, టెక్స్ట్ వర్గీకరణ కోసం డిఫాల్ట్ మోడల్ మా హోస్ట్ మెషీన్‌కు డౌన్‌లోడ్ చేయబడుతుంది. ఇప్పుడు, మన పని కోసం ఈ నమూనాను ఉపయోగించవచ్చు.

కాబట్టి, పాండాలను 'pd'గా దిగుమతి చేయండి. మేము ఈ ప్యాకేజీని దిగుమతి చేయాలనుకుంటున్నాము ఎందుకంటే మేము మోడల్ నుండి అవుట్‌పుట్‌ను డేటాఫ్రేమ్ రూపంలో ప్రింట్ చేయాలనుకుంటున్నాము. ఇప్పుడు, మేము మా మోడల్‌కు ఇన్‌పుట్‌గా ఇవ్వాలనుకుంటున్న టెక్స్ట్‌ను పాజిటివ్ లేదా నెగటివ్ వాక్యంగా వర్గీకరించడానికి నిర్దేశిస్తాము. మేము వచనాన్ని 'నేను మంచి వ్యక్తిని' అని సెట్ చేసాము. మేము ఈ ఉదాహరణలో ఇప్పుడే సృష్టించిన వర్గీకరణ() మోడల్‌కి ఈ వచనాన్ని పాస్ చేస్తాము మరియు ఫలితాలను “అవుట్‌పుట్” వేరియబుల్‌లో సేవ్ చేస్తాము.

అవుట్‌పుట్‌ను ప్రదర్శించడానికి, మేము పాండాల ఉపసర్గను పిడి చేస్తాము, అనగా pdని “.Dataframe()” అని పిలుస్తాము మరియు వర్గీకరణ మోడల్ నుండి అవుట్‌పుట్‌ను ఈ ఫంక్షన్‌కి పంపుతాము. ఇది ఇప్పుడు క్రింది అవుట్‌పుట్ స్నిప్పెట్‌లో చూపిన విధంగా వర్గీకరణ మోడల్ నుండి ఫలితాలను ప్రదర్శిస్తుంది. మా వర్గీకరణ నమూనా వచనాన్ని సానుకూల తరగతిగా వర్గీకరిస్తుంది.

!పిప్ ట్రాన్స్‌ఫార్మర్‌లను ఇన్‌స్టాల్ చేయండి
ట్రాన్స్‌ఫార్మర్ల నుండి పైప్‌లైన్‌ను దిగుమతి చేసుకుంటుంది
పాండాలను pdగా దిగుమతి చేయండి
వర్గీకరణదారు = పైప్‌లైన్('టెక్స్ట్-క్లాసిఫికేషన్', మోడల్ = 'టెక్స్ట్‌టాక్/డిస్టిల్బర్ట్-బేస్-అన్‌కేస్డ్-కోలా')
text = 'నేను మంచి వ్యక్తిని'
ఫలితం = వర్గీకరణ (టెక్స్ట్)
ముద్రణ (ఫలితం)
df = pd.DataFrame(ఫలితం)

ముగింపు

ఈ గైడ్ హగ్గింగ్ ఫేస్ నుండి ట్రాన్స్‌ఫార్మర్ ఆర్కిటెక్చర్‌ను కవర్ చేసింది. మేము హగ్గింగ్ ఫేస్ ట్రాన్స్‌ఫార్మర్ నుండి 'పైప్‌లైన్' లైబ్రరీ గురించి చర్చించాము. అప్పుడు, ఈ లైబ్రరీ సహాయంతో, మేము టెక్స్ట్ ఉత్పత్తి మరియు వర్గీకరణ పనుల కోసం ముందుగా శిక్షణ పొందిన ట్రాన్స్‌ఫార్మర్స్ మోడల్‌లను ఉపయోగించాము.