##Chiyambi
Zinenero Zazinenelo Zazikulu (LLMs) zasintha kwambiri gawo la chilankhulo chachilengedwe (NLP) m'zaka zaposachedwa. Zitsanzozi zapeza zotsatira zapamwamba kwambiri pa ntchito zosiyanasiyana za NLP, kuphatikizapo kumasulira chinenero, kufotokozera mwachidule, ndi kuyankha mafunso. Komabe, kuthekera kwenikweni kwa ma LLM kuli pakutha kuganiza ndi kumvetsetsa ubale wovuta pakati pa malingaliro. M'nkhaniyi, tikambirana za kupita patsogolo kwa malingaliro a LLM, ndikuwunika njira zoyambira, zomangamanga, ndi zovuta.
Mbiri
Ma LLM ndi mtundu wa neural network womwe umaphunzitsidwa pazambiri zamawu kuti aphunzire machitidwe ndi maubale pakati pa mawu ndi malingaliro. Zitsanzozi nthawi zambiri zimakhala ndi encoder ndi decoder, pomwe encoder imayang'anira mawu olowera ndipo decoder imapanga mawu otuluka. Encoder nthawi zambiri imakhala yopangidwa ndi transformer, yomwe imakhala yoyenera kwambiri pazotsatira zotsatizana monga zolemba.
Zomangamanga za Transformer
Zomangamanga za thiransifoma, zomwe zidayambitsidwa mu pepala "Chidziwitso Ndi Zonse Zomwe Mukufuna" ndi Vaswani et al. (2017), wakhala muyezo de facto kwa LLMs. Transformer imakhala ndi encoder ndi decoder, iliyonse imakhala ndi zigawo zingapo. Chigawo chilichonse chimakhala ndi magawo awiri ang'onoang'ono: makina odzisamalira okha komanso network yolumikizidwa bwino ya feed-forward network (FFNN).
import tochi
import torch.nn ngati nn
kalasi TransformerLayer(nn.Module):
def __init__(self, d_model, n_heads, d_ff):
wapamwamba(TransformerLayer, self).__init__()
self.self_attn = nn.MultiHeadAttention(d_model, n_heads)
self.ffnn = nn.Linear(d_model, d_ff)
self.dropout = nn.Dropout(0.1)
self.layer_norm = nn.LayerNorm(d_model)
def patsogolo (ndekha, x):
# Makina odzisamalira okha
x_attn = self.self_attn(x, x)
x_attn = self.dropout(x_attn)
x_attn = x + x_attn
#FFNN
x_ffnn = self.ffnn(x_attn)
x_ffnn = self.dropout(x_ffnn)
x_ffnn = self.layer_norm(x_ffnn + x_attn)
bweza x_ffnn
Zotsogola mu Kukambitsirana kwa LLM
Ma LLM apita patsogolo kwambiri pakulingalira ndikumvetsetsa ubale wovuta pakati pa malingaliro. Zina mwazotukuka zazikulu ndi izi:
1. Kukambitsirana kwa Graph
Kulingalira motengera ma graph kumaphatikizapo kuyimira chidziwitso ngati graph, pomwe mfundo zimayimira malingaliro ndi m'mphepete zimayimira ubale pakati pawo. Ma LLM amatha kuphunzitsidwa kulingalira za ma graph awa, kulosera za ubale womwe ulipo pakati pa mfundo.
gwiritsani ntchito graph::Graph;
gwiritsani ntchito neural_network ::NeuralNetwork;
fn graph_reasoning(graph: &Graph, query: &str) -> Chingwe {
lolani embedding = neural_network.query(graph, query);
lolani zotsatira = neural_network.reason(graph, embedding);
result.to_string()
}
2. Maphunziro a Ntchito Zambiri
Kuphunzira ntchito zambiri kumaphatikizapo kuphunzitsa chitsanzo chimodzi pa ntchito zingapo nthawi imodzi. Njirayi yasonyezedwa kuti ipititse patsogolo ntchito za LLM pa ntchito zosiyanasiyana, kuphatikizapo kulingalira ndi kumvetsetsa maubwenzi ovuta.
phukusi lalikulu
itanitsa (
"fmt"
"gonum.org/v1/gonum/mat"
)
mtundu wa Model struct {
*nn.Linear
*nn.Linear
}
func (m *Model) Patsogolo(x *mat.Dense) *mat.Dense {
// Kupita patsogolo
z := m.Linear(x)
z = m.Linear(z)
kubwerera z
}
3. Njira Zosamalira
Njira zowunikira zimalola ma LLM kuyang'ana mbali zina za mawu olowera pamene akupanga zotulutsa. Njirayi yasonyezedwa kuti ipititse patsogolo ntchito za LLM pa ntchito zosiyanasiyana, kuphatikizapo kulingalira ndi kumvetsetsa maubwenzi ovuta.
import tochi
import torch.nn ngati nn
kalasi AttentionMechanism(nn.Module):
def __init__(self, d_model, n_heads):
wapamwamba(AttentionMechanism, self).__init__()
self.query = nn.Linear(d_model, d_model)
self.key = nn.Linear(d_model, d_model)
self.value = nn.Linear(d_model, d_model)
self.dropout = nn.Dropout(0.1)
self.layer_norm = nn.LayerNorm(d_model)
def patsogolo (ndekha, x):
# Funso, kiyi, ndi mtengo
q = self.query(x)
k = self.key(x)
v = self.value(x)
# Zindikirani zolemera
zolemera = torch.matmul(q, k.T) / math.sqrt(q.shape[1])
zolemera = self.dropout(zolemera)
zolemera = torch.softmax(zolemera, dim=-1)
# Vector ya context
context = torch.matmul(zolemera, v)
bwererani nkhani
# Kuwona
Kuti tiwone momwe ma LLM amagwirira ntchito pazantchito zosiyanasiyana, titha kugwiritsa ntchito tchati kuti tifananize kulondola kwamitundu yosiyanasiyana pantchito yomwe tapatsidwa. Nachi chitsanzo cha tchati chogwiritsa ntchito Chart.js:
{
"type": "bar",
"data": {
"labels": ["Ntchito 1", "Task 2", "Task 3"],
"ma dataset": [
{
"label": "Model 1",
"Deta": [0.8, 0.7, 0.9],
"backgroundColor": "rgba(255, 99, 132, 0.2)",
"borderColor": "rgba(255, 99, 132, 1)",
"BorderWidth": 1
},
{
"label": "Model 2",
"Deta": [0.9, 0.8, 0.7],
"backgroundColor": "rgba(54, 162, 235, 0.2)",
"borderColor": "rgba(54, 162, 235, 1)",
"BorderWidth": 1
}
]
},
"zosankha": {
"mutu": {
"kuwonetsa": zoona,
"text": "Kulondola kwa Zitsanzo Zosiyanasiyana pa Ntchito Zosiyanasiyana"
},
"masikelo": {
"yAxes": [
{
"nkhupakupa": {
"beginAtZero": zoona
}
}
]
}
}
}
##Mapeto
M'nkhaniyi, tasanthula kupita patsogolo kwa malingaliro a LLM, kuphatikiza malingaliro otengera ma graph, kuphunzira ntchito zambiri, komanso njira zowunikira. Taperekanso zitsanzo zamakhodi mu Python, Rust, ndi Go kuti tifotokoze mfundozi. Pomaliza, tagwiritsa ntchito tchati kuti tiwone momwe ma LLM amagwirira ntchito pazinthu zosiyanasiyana. Kupita patsogolo kumeneku kuli ndi kuthekera kosintha gawo la NLP, kupangitsa ma LLM kulingalira ndikumvetsetsa ubale wovuta pakati pa malingaliro.
Zothandizira
*Vaswani et al. (2017). Chisamaliro Ndi Zonse Zomwe Mukufuna. arXiv preprint arXiv:1706.03762. *Devlin et al. (2018). BERT: Kuphunzitsatu kwa Deep Bidirectional Transformers kwa Kumvetsetsa Chiyankhulo. arXiv preprint arXiv:1810.04805.
- Radford et al. (2019). Zinenero za Zinenero ndi Ophunzira Osayang'aniridwa ndi Multitask. arXiv preprint arXiv:1906.08237.