Per-āa : Wywieranie presji z południa: wpływy nubijskie

https://szkolazpieklarodem.pl/

Około 727 p.n.e. władza i wpływy Nubijczyków rozprzestrzeniły się na północ od ich ojczyzny aż do regionu tebańskiego. Jeśli Nubijczycy podróżowali dalej na północ, mogą zakłócać spokój podzielonej północy. Północni królowie z 22. (Tanis), 23. (Leontopolis) i 24. (Sais) dynastii połączyli więc siły, aby umożliwić im rozprawienie się z nubijską grupą władców (25. dynastia), aby zapobiec dalszemu rozszerzaniu się jej władzy. Rosnąca siła Nubia nigdy wcześniej nie była zagrożeniem dla Egipcjan. Do panowania Ramzesa II  obszar ten był pod ścisłą kontrolą Egipcjan, którzy eksploatowali nubijskie kamieniołomy i kopalnie złota. Po osłabieniu sił Ramzesa II Nubia zaczęła dystansować się od Egipcjan i zdołała stworzyć własną stolicę w Napacie (w pobliżu czwartej katarakty Nilu). Podczas XXI dynastii arcykapłani Amona zdobyli duże wpływy w Nubii, a nawet zbudowali dla Amona dużą świątynię w Gebel Barkal na terytorium Nubii. Kapłani nubijscy tej świątyni również rozszerzyli swoją władzę na okolicę i ostatecznie uzurpowali sobie królestwo nubijskie. Ci królowie nubijscy używali tytułów i kartuszy na sposób tradycyjnych królów egipskich. Po ugruntowaniu się dynastii nubijskiej zaczęła ona przesuwać się na północ do Egiptu, gdzie egipska władza królewska była oczywiście w stanie osłabienia z powodu licznych podziałów. Nubijczycy postrzegali swój postęp jako okazję do odwrócenia sytuacji i kontrolowania Egiptu dla odmiany.

Chatbot z Pytonem : Rozpoznawanie nazwanych jednostek

https://szkolazpieklarodem.pl/

Rozpoznawanie nazwanych jednostek (NER), znane również pod innymi nazwami, takimi jak identyfikacja jednostek lub wyodrębnianie jednostek, to proces wyszukiwania i klasyfikowania nazwanych jednostek istniejących w danym tekście do wcześniej zdefiniowanych kategorii. Zadanie NER jest w ogromnym stopniu zależne od bazy wiedzy używanej do uczenia algorytmu ekstrakcji NE, więc może działać, ale nie musi, w zależności od dostarczonego zbioru danych, na którym zostało przeszkolone. spaCy posiada bardzo szybki model rozpoznawania jednostek, który jest w stanie zidentyfikować frazy jednostek z danego dokumentu. Jednostki mogą być różnych typów, np. osoba, lokalizacja, organizacja, daty, cyfry itp. Dostęp do tych encji można uzyskać poprzez właściwość .ents obiektu doc. Spróbujmy znaleźć nazwane jednostki, biorąc kilka przykładów z pomocą potężnej możliwości tagowania NER spaCy.

Przykład 1:

my_string = u”Google has its headquarters in Mountain View, California

having revenue amounted to 109.65 billion US dollars”

doc = nlp(my_string)

for ent in doc.ents:

print(ent.text, ent.label_)

Output:

(‘Google’, ‘ORG’)

(‘Mountain View’, ‘GPE’)

(‘California’, ‘GPE’)

(‘109.65 billion US dollars’, ‘MONEY’)

Widzimy jak pięknie i automagicznie model spaCy z łatwością potrafił zidentyfikować, że słowo Google jako Organizacja, Kalifornia to byt geopolityczny, a w podanym zdaniu mówimy o 109,65 miliardach dolarów amerykańskich, co tak naprawdę chodzi o pieniądze. Spróbujmy zbadać więcej przykładów.

Przykład 2:

my_string = u”Mark Zuckerberg born May 14, 1984 in New York is an American technology entrepreneur and philanthropist best known for co-founding and leading Facebook as its chairman and CEO.”

doc = nlp(my_string)

for ent in doc.ents:

print(ent.text, ent.label_)

Wyjście:

(‘Mark Zuckerberg’, ‘PERSON’)

(‘May 14, 1984’, ‘DATE’)

(‘New York’, ‘GPE’)

(‘American’, ‘NORP’)

(‘Facebook’, ‘ORG’)

Przykład 3:

my_string = u”I usually wake up at 9:00 AM. 90% of my daytime goes in

learning new things.”

doc = nlp(my_string)

for ent in doc.ents:

print(ent.text, ent.label_)

Wyjście:

(‘9:00 AM’, ‘TIME’)

(‘90%’, ‘PERCENT’)

Jak widać, ekstraktor encji może z łatwością wyodrębnić informacje o czasie z danego ciągu. Jak widać ekstraktor jednostek próbuje nie tylko zidentyfikować liczbę, ale także dokładną wartość PROCENTOWĄ. Zgodnie z dokumentacją spaCy, modele trenowane w korpusie OntoNotes 51 obsługują następujące typy jednostek.

TYP: OPIS

PERSON: Ludzie, także fikcyjni

NORP: Narodowości, grupy religijne lub polityczne

FAC: Budynki, lotniska, autostrady, mosty itp.

ORG: Firmy, agencje, instytucje itp.

GPE: Kraje, miasta, stany

LOC: lokalizacje inne niż GPE, pasma górskie, zbiorniki wodne

PRODUCT: Przedmioty, pojazdy, żywność itp. (nie usługi)

EVENT : Nazwane huragany, bitwy, wojny, wydarzenia sportowe itp.

WORK_OF_ART: Tytuły książek, piosenek itp.

LAW : Nazwane dokumenty przekształcone w prawa

LANGUAGE: Dowolny nazwany język

DATE: Bezwzględne lub względne daty lub okresy

TIME: Czasy krótsze niż jeden dzień

PERCENT: Procent, w tym „%”

MONEY: Wartość pieniężna, łącznie z jednostką

QUANTITY: Wymiary, takie jak waga lub odległość

ORDINAL: „pierwszy”, „drugi” itp.

CARDINAL: Liczby, które nie należą do innego typu

Ilekroć mamy zamiar zbudować agenta konwersacyjnego lub chatbota w prostych słowach, zawsze mamy na myśli domenę. Na przykład chcemy, aby chatbot umawiał wizytę u lekarza, zamawiał jedzenie, płacił rachunki, wypełniał wnioski bankowe, zajmował się handlem elektronicznym itp. Chatbot mógłby również rozwiązywać kombinację tych problemów. Znając podmiot występujący w pytaniu, można uzyskać rzetelny obraz kontekstu, w jakim pytanie zostało zadane. Spróbujmy to zrozumieć na przykładzie dwóch zdań z podobnymi słowami i różnymi znaczeniami.

my_string1 = u”Imagine Dragons are the best band.”

my_string2 = u”Imagine dragons come and take over the city.”

doc1 = nlp(my_string1)

doc2 = nlp(my_string2)

for ent in doc1.ents:

print(ent.text, ent.label_)

The above for loop over doc1 object gives an output:

(‘Imagine Dragons’, ‘ORG’)

Niesamowite, prawda? Stanie się bardziej intrygujące, gdy zdasz sobie sprawę, że moduł rozpoznawania jednostek nie rozpoznaje żadnej jednostki w drugim ciągu. Uruchom następujący kod, a dokument doc2 nie wygeneruje żadnych danych wyjściowych.

for ent w doc2.ents:

print(ent.text, ent.label_)

Teraz wyobraź sobie, że chcesz wyodrębnić kontekst powyższych dwóch ciągów w środowisku na żywo. Co byś zrobił? Za pomocą Entity Extractor można łatwo rozgryźć kontekst wypowiedzi i inteligentnie poprowadzić rozmowę dalej.

Per-āa : Libijski wyzwoliciel

https://szkolazpieklarodem.pl/

W 925 r. p.n.e. Szeszonk poszedł na wojnę z Palestyną i udowodnił, że wojsko egipskie wciąż jest siłą, z którą należy się liczyć. Jego kampania została nawet porównana do kampanii Ramzesa III przeciwko ludziom morza. Kiedy król Salomon zmarł w 930 p.n.e, jego syn Roboam rządził Judą, a Jeroboam I (pierwszy król plemienia Efraima, który rządził Izraelem) rządził Izraelem. Władcy ci byli w trakcie wojny domowej, kiedy Szeszonk postanowił udowodnić, że Egipt wciąż jest wielki. Armia egipska najpierw pomaszerowała do Judy i rozbiła obóz poza murami Jerozolimy, którą rządził król Roboam. Biblia podaje, że Szeszonk (Sziszak) został przekupiony dużą ilością złota i upragnioną Arką Przymierza, aby nie wszedł i nie splądrował miasta. Szeszonk kontynuował marsz do Izraela, aż dotarł do Megiddo, miejsca, w którym Totmes III stoczył swoją słynną bitwę (patrz rozdział 4). Szeszonk wzniósł w tym miejscu stelę, aby upamiętnić swoje zwycięstwo nad starożytnym Izraelem. Swoje zwycięstwa zanotował dalej w kamieniołomach Gebel Silsila i świątyni w Karnaku.

Chatbot z Pytonem : Stemming i lematyzacja

https://szkolazpieklarodem.pl/

Stemming to proces redukcji odmienionych słów do ich rdzenia, formy podstawowej. Algorytm wynikający redukuje słowa „mówiąc” do rdzenia „powiedzieć”, podczas gdy „prawdopodobnie” staje się domniemaniem. Jak widać, może to być w 100% poprawne, ale nie zawsze. Lematyzacja jest ściśle związana z rdzeniem, ale lematyzacja to algorytmiczny proces określania lematu słowa na podstawie jego zamierzonego znaczenia. Na przykład w języku angielskim czasownik „chodzić” może występować jako „chodzić”, „chodzić”, „chodzić” lub „chodzić”. Podstawowa forma „spaceru”, którą można znaleźć w słowniku, nazywa się lematem na to słowo. spaCy nie ma wbudowanego rdzenia, ponieważ lematyzacja jest uważana za bardziej poprawną i produktywną. Różnica między Stemmingiem a Lematyzacją

  • Stemming wykonuje tę pracę w prymitywny, heurystyczny sposób, odcinając końcówki słów, zakładając, że pozostałe słowo jest tym, czego faktycznie szukamy, ale często obejmuje to usuwanie afiksów derywacyjnych.
  • Lematyzacja próbuje wykonać to zadanie w bardziej elegancki sposób, wykorzystując słownictwo i analizę morfologiczną słów. Próbuje usunąć tylko końcówki fleksyjne i zwrócić słownikową formę słowa, znaną jako lemat.

Chociaż niewiele bibliotek udostępnia metody rdzeniowania i lematyzacji, zawsze najlepszą praktyką jest użycie lematyzacji w celu prawidłowego uzyskania rdzenia słowa. Spróbujmy zbadać lematyzację na kilku przykładach:

Przykład 1:

from spacy.lemmatizer import Lemmatizer

from spacy.lang.en import LEMMA_INDEX, LEMMA_EXC, LEMMA_RULES

lemmatizer = Lemmatizer(LEMMA_INDEX, LEMMA_EXC, LEMMA_RULES)

lemmatizer(‘chuckles’, ‘NOUN’) # 2nd param is token’s part-of-speech tag

Wyjście :

[u’chuckle’]

Przykład 2:

lemmatizer(‘blazing’, ‘VERB’)

Wyjście:

[u’blaze’]

Przykład 3:

lemmatizer(‘fastest’, ‘ADJ’)

Wyjście:

[u’fast’]

Jeśli chcesz zobaczyć porównanie stemmera i lemmatizera, musisz zainstalować jedną z najpopularniejszych bibliotek dla Pythona: Natural Language Toolkit (NLTK). spaCy zyskało popularność niedawno, ale to NLTK sprawiło, że każdy entuzjasta NLP zanurzył się w oceanie NLP i jego technik. Sprawdź następujący przykład, w którym próbujemy użyć dwóch technik stemplowania dostarczonych przez NLTK. Najpierw staramy się uzyskać rdzeń słowa „najszybszy”, używając PorterStemmer, a następnie SnowBallStemmer. Obydwa dają ten sam wynik – to znaczy „najszybszy” – ale kiedy wykonujemy lematyzację za pomocą metody spaCy, otrzymujemy „szybki” jako rdzeń słowa „najszybszy”, co jest bardziej znaczące i poprawne.

from nltk.stem.porter import *

from nltk.stem.snowball import SnowballStemmer

porter_stemmer = PorterStemmer()

snowball_stemmer = SnowballStemmer(“english”)

print(porter_stemmer.stem(“fastest”))

print(snowball_stemmer.stem(“fastest”))

fastest

fastest

Uwaga: przed próbą uruchomienia tego kodu upewnij się, że zainstalowałeś pakiet nltk przy użyciu pip3.

Ponieważ jesteś prawie świadomy tego, co robi stemming lub lematyzacja w NLP, powinieneś być w stanie zrozumieć, że kiedykolwiek spotkasz się z sytuacją, w której potrzebujesz rdzenia słowa, musisz tam przeprowadzić lematyzację. Na przykład często jest używany do budowy wyszukiwarek. Pewnie zastanawiałeś się, w jaki sposób Google wyświetla w wynikach wyszukiwania artykuły, które chciałeś uzyskać, nawet jeśli wyszukiwany tekst nie został poprawnie sformułowany. W tym miejscu posługujemy się lematyzacją. Wyobraź sobie, że wyszukujesz tekst: „Kiedy zostanie wydany kolejny sezon Gry o tron?” Załóżmy teraz, że wyszukiwarka dokonuje prostego dopasowywania częstotliwości słów w dokumencie, aby uzyskać wyniki wyszukiwania. W tym przypadku powyższe zapytanie prawdopodobnie nie będzie pasować do artykułu z podpisem „Data premiery Gry o Tron w następnym sezonie”. Jeśli przeprowadzimy lematyzację pierwotnego pytania przed dopasowaniem danych wejściowych do dokumentów, możemy uzyskać lepsze wyniki. Spróbujemy przetestować tę teorię również w nadchodzących sekcjach.

Per-āa : Za dużo królów

https://szkolazpieklarodem.pl/

Problemy w Delcie doprowadziły w końcu do zmiany dynastycznej, podczas gdy siódmy król 22 dynastii, Szeszonk III, nadal rządził z Tanis. Trzech kolejnych królów rządziło przez następne 100 lat, aż do końca 22. dynastii, ale w międzyczasie w całej Delcie pojawiło się wielu innych władców. Wśród nich wyróżniał się Pedibast, lokalny wódz w Leontopolis, który przejął rządy w środkowej Delcie i podzielił rządy Egiptu na trzy części. Członkowie rodzin Pedibast i Szeszonka (wschód) udali się na południe, aby dołączyć do kapłaństwa Amona, zapewniając, że istniały królewskie powiązania z tą potężną frakcją. Pod koniec 23. dynastii wprowadzenie kolejnej dynastii królów spowodowało dalsze podziały:

Król Szeszonk III w Tanis (22. dynastia)

Król Iupet w Leontopolis (23. dynastia)

Król Peftjauabastet w Herakleopolis (23. dynastia)

Król Nimlot w Hermopolis (23. dynastia)

Król Tefnacht w Sais (24 dynastia)

Każdy z tych królów rządził tylko niewielkim obszarem, ale wszyscy wzięli pełny tytuł króla i zapisali swoje imiona w kartuszach. Wszyscy wydawali się zadowoleni z aranżacji i zostawili się w spokoju. Jednak pod koniec tego okresu (około 727 p.n.e.) pojawiło się znacznie większe zagrożenie, które powstrzymało rozwój dalszych podziałów – potęga Nubii. W rzeczywistości to nowe zagrożenie zachęciło królów do połączenia się i współpracy w harmonii.

Chatbot z Pytonem : Znakowanie części mowy

https://szkolazpieklarodem.pl/

Znakowanie części mowy (Part-of-speech POS) to proces, podczas którego czytasz jakiś tekst i przypisujesz części mowy do każdego słowa lub symbolu, takiego jak rzeczownik, czasownik, przymiotnik itp. Znakowanie POS staje się niezwykle ważne, gdy chcesz zidentyfikować jakiś podmiot w danym zdaniu. Pierwszym krokiem jest wykonanie tagowania POS i sprawdzenie, co zawiera nasz tekst. Zajmijmy się kilkoma przykładami prawdziwego tagowania POS.

Przykład 1:

nlp = spacy.load(‘en’) #Loads the spacy en model into a python object

doc = nlp(u’I am learning how to build chatbots’) #Creates a doc object

for token in doc:

print(token.text, token.pos_) #prints the text and POS

Dane wyjściowe:

(‘I’, ‘PRON’)

(‘am’, ‘VERB’)

(‘learning’, ‘VERB’)

(‘how’, ‘ADV’)

(‘to’, ‘PART’)

(‘build’, ‘VERB’)

(‘chatbots’, ‘NOUN’)

Przykład 2:

doc = nlp(u’I am going to London next week for a meeting.’)

for token in doc:

print(token.text, token.pos_)

Dane wyjściowe:

(‘I’, ‘PRON’)

(‘am’, ‘VERB’)

(‘going’, ‘VERB’)

(‘to’, ‘ADP’)

(‘London’, ‘PROPN’)

(‘next’, ‘ADJ’)

(‘week’, ‘NOUN’)

(‘for’, ‘ADP’)

(‘a’, ‘DET’)

(‘meeting’, ‘NOUN’)

(‘.’, ‘PUNCT’)

Jak widzimy, drukując tokeny ze zwróconego obiektu Doc z metody nlp, która jest kontenerem umożliwiającym dostęp do adnotacji, otrzymujemy POS otagowany każdym ze słów w zdaniu. Te znaczniki to właściwości należące do słowa, które określają, że słowo jest użyte w poprawnym gramatycznie zdaniu. Możemy używać tych znaczników jako funkcji słów w filtrowaniu informacji itp. spróbujmy wziąć inny przykład, w którym próbujemy zbadać różne atrybuty tokena pochodzącego z obiektu Doc.

Przykład 3:

doc = nlp(u’Google release “Move Mirror” AI experiment that matches your

pose from 80,000 images’)

for token in doc:

print(token.text, token.lemma_, token.pos_, token.tag_, token.dep_,

token.shape_, token.is_alpha, token.is_stop)

Dane wyjściowe:

Przykład 4:

doc = nlp(u’I am learning how to build chatbots’)

for token in doc:

print(token.text, token.lemma_, token.pos_, token.tag_, token.dep_,

token.shape_, token.is_alpha, token.is_stop)

Dane wyjściowe:

Zapoznaj się z poniższą tabelą, aby poznać znaczenie każdego atrybutu, który wydrukowaliśmy w kodzie.

TEXT: Rzeczywisty tekst lub przetwarzane słowo

LEMMA: Rdzeń przetwarzanego słowa

POS: Część mowy słowa

TAG: wyrażają część mowy (np. CZASOWNIK) i pewną ilość informacji morfologicznych (np., że czasownik jest w czasie przeszłym).

DEP: Zależność syntaktyczna (tj. relacja między tokenami)

SHAPE : kształt słowa (np. wielkość liter, znaki interpunkcyjne, format cyfr)

ALPHA: Czy token jest znakiem alfa?

Stop: Czy słowo jest słowem stop, czy częścią listy stop?

Możesz zapoznać się z poniższą tabelą, aby zrozumieć, co oznaczają poszczególne wartości atrybutów POS obiektu tokena. Ta lista zawiera szczegółowy opis znaczników części mowy przypisanych przez modele spaCy.

POZ: OPIS: PRZYKŁADY

ADJ: przymiotnik: duży, stary, zielony, niezrozumiały, pierwszy

ADP: przyimek: w, do, podczas

ADV: przysłówek: bardzo, jutro, w dół, gdzie, tam

AUX: pomocniczy: jest, zrobił (zrobił), będzie (zrobi), powinien (zrobić)

CONJ: spójnik: i, lub, ale

CCONJ: spójnik koordynujący: i, lub, ale

DET: wyznacznik: a, an, the

INTJ: wykrzyknik: psst, ouch, brawo, cześć

NOUN.: rzeczownik: dziewczyna, kot, drzewo, powietrze, piękno

NUM: cyfra: 1, 2017, jeden, siedemdziesiąt siedem, IV, MMXIV

PART: cząstka: „s, nie,

PRON: zaimek: ja, ty, on, ona, ja, oni sami, ktoś

PROPN: rzeczownik własny: Mary, John, London, NATO, HBO

PUNCT: interpunkcja: ., (, ), ?

SCONJ: spójnik podrzędny: jeśli, podczas gdy, to

SYM: symbol: $, %, §, ©, +, −, ×, ÷, =, :), ½

VERB: czasownik: biegać, biegać, biegać, jeść, jeść, jeść

X: inne: sfpksdpsxmsa

SPACE: przestrzeń

Dlaczego więc tagowanie POS jest potrzebne w przypadku chatbotów? Odpowiedź: aby zmniejszyć złożoność zrozumienia tekstu, którego nie można wytrenować lub który jest przeszkolony z mniejszą pewnością. Dzięki tagowaniu POS możemy zidentyfikować części wprowadzanego tekstu i dopasować ciągi tylko dla tych części. Na przykład, jeśli chcesz sprawdzić, czy w zdaniu istnieje lokalizacja, znacznik POS oznaczy słowo lokalizacji jako RZECZOWNIK, dzięki czemu będziesz mógł pobrać wszystkie RZECZOWNIKI z listy oznaczonych i sprawdzić, czy jest to jedna z lokalizacji z wstępnie ustawionej listy albo nie.

Per-āa : Koniec pokoju Szeszonka

https://szkolazpieklarodem.pl/

Pomimo najlepszych wysiłków Shehonq I, by rządzić zjednoczonym Egiptem i utrzymać militarną sprawność narodu egipskiego, koniec 22. dynastii spowodował niepokoje i podziały narodowe. Chociaż kapłaństwo Amona znajdowało się teraz pod kontrolą północnego króla dzięki powiązaniom rodzinnym, pod koniec dynastii wysokie kapłaństwo doświadczyło luki w sukcesji, która doprowadziła do wojny domowej trwającej ponad dekadę. Po zakończeniu tej wojny domowej pokój trwał krótko z dalszymi powstaniami i działaniami wojennymi, które spowodowały nie tylko dywizje północ-południe, ale nawet wschodnie – centralne podziały w Delcie między wodzami Leontopolis (centralny) i Tanis (wschód). Harmonia panowania Szeszonka Powoli popadałem w chaos

Chatbot z Pytonem : Podstawowe metody NLP do budowania chatbotów

https://szkolazpieklarodem.pl/

Bardzo ważne jest, aby znać podstawy, aby być w czymś ekspertem i robić to skutecznie i wydajnie. Aby zbudować chatboty, musimy znać podstawowe metody NLP. Metody te pomagają nam podzielić dane wejściowe na kawałki i nadać im sens. W następnej sekcji nauczymy się niektórych z najczęściej używanych metod NLP, które nie tylko pomogą Ci być dobrym w NLP, ale także będą dobre w budowaniu fajnych chatbotów. Im lepiej i efektywniej przetworzymy wprowadzany tekst, tym lepiej będziemy mogli odpowiedzieć użytkownikowi.

Per-āa : Krótko jednocząc dwie ziemie: Szeszonk I

https://szkolazpieklarodem.pl/

Po 21. dynastii Tanis nastąpiła 22. dynastia (945-745 p.n.e.), której członkowie również rządzili z Tanis, ale uważa się, że są pochodzenia libijskiego. Pierwszym królem tego okresu jest Szeszonk I (945-924 p.n.e.), który legitymizował swoje roszczenia do tronu poślubiając córkę Psusennesa II, ostatniego króla XXI dynastii. Szeszonk wydaje się być libijskim wodzem – konkretnie przywódcą Meshwesh, libijskiego plemienia nomadów. Szeszonk posiadał tytuły wojskowe i przyjął królewskie tytuły Smendesa, który rządził ponad 100 lat wcześniej. Te tytuły dały mu trochę kopa do tronu. Chociaż był Libijczykiem, Szeszonk I ponownie zjednoczył podzielony Egipt i skutecznie rządził zarówno Górnym, jak i Dolnym Egiptem, co było szczególnie ważne, aby został uznany za prawdziwego króla Egiptu. Udało mu się przejąć kontrolę nad południem Egiptu, ponieważ jego syn posiadał tytuł arcykapłana Amona, jednocząc tron ​​północny i kapłaństwo południowe.

Chatbot z Pytonem : Czym są modele SpaCy?

https://szkolazpieklarodem.pl/

Modele SpaCy działają tak samo jak wszystkie inne modele uczenia maszynowego lub głębokiego uczenia się. Model to wynik algorytmu lub, powiedzmy, obiekt tworzony po przeszkoleniu danych przy użyciu algorytmu uczenia maszynowego. spaCy ma wiele takich modeli, które można umieścić bezpośrednio w naszym programie, pobierając go tak samo, jak każdy inny pakiet Pythona. Teraz zainstalujemy modele spaCy jako pakiety Pythona. Aby to zrobić, uruchomimy w notatniku następujące polecenie, korzystając z magicznego polecenia notatnika. Przez prefiks! [Operator wykrzyknika] przed poleceniem powłoki możemy uruchamiać polecenia powłoki również z notesów Jupyter. Zobaczmy jak to wygląda.

!python3 -m spacy download en

Podczas używania Jupyter Notebook do pobierania modeli spaCy dla Pythona 3 może wystąpić problem z uprawnieniami. Przejdź do terminala i uruchom następujące polecenie:

sudo python3 –m download en

Patrz rysunek w celach informacyjnych.

Jak widać na rysunku, spaCy próbuje pobrać niektóre podstawowe pliki i zainstalować je jako pakiety Pythona.

Notatka : ! [Operator wykrzyknika] działa tylko wJupyter Notebookr. Aby zainstalować modele spaCy bezpośrednio z terminala, musisz usunąć ! [Operator wykrzyknika]; w przeciwnym razie spowoduje to błąd.