Import

import-chat.ts
import { NuiChat, NuiChatSession, nuiEventStream } from '@needless-ui/angular/chat';

NuiChat

Obrolan lan kothak kanggo nulis, dadi siji.

Selector
nui-chat
NuiChat: Properti
JenengJinisGawanKatrangan
sessionInputNuiChatSessionObrolan sing ditampilake.
assistantInputstring'Assistant'Jeneng asisten, ing heading sing dirungokake screen reader.
headingLevelInputnumber3Level heading saben pesen, sing mung katon kanggo screen reader. Heading ing jawaban siji level luwih jero.
announceInput'reply' | 'notice' | 'off''reply'Apa sing dirungokake screen reader nalika jawaban rampung: kabeh, kabar cekak, utawa ora ana.
imagesInputbooleanfalseNampilake gambar ing jawaban. Yen ora, teks-e dadi pranala menyang gambar.
valueRong arahstring''Teks sing lagi ditulis.
placeholderInputstringPitunjuk ing kolom kosong.
suggestionsInputstring[][]Prompt sing dikirim sak klik, nganti pesen kapisan.
sendOnInput'enter' | 'mod+enter''enter'Apa Enter ngirim, utawa Ctrl utawa ⌘ + Enter.
disabledInputbooleanfalseNgalangi kothak tulis ngirim.
attachInputbooleanfalseNampa berkas: sing dipilih, ditempel utawa diselehake.
acceptInputstring''Jinis berkas sing ditampa, kaya ing <input type="file">.
maxFilesInputnumber10Pira berkas sing bisa digawa siji pesen.
maxSizeInputnumber20_000_000Berkas paling gedhe sing ditampa, ing bita.
labelsInputNuiChatLabelsInputSaben teks sing ditampilake utawa diumumake chat, kanggo diterjemahake.
ratedOutput{ message, rating }Ngetokake jawaban sing diwenehi rating dening sing maca, bareng rating-e, utawa null yen rating dibatalake.
focusMetode() => voidMindhah fokus menyang kolom teks.
scrollToEndMetode(behavior?) => voidNggulung menyang pesen paling anyar, lan ngetutake.

NuiChatSession

Obrolan, tanpa DOM babar pisan. Gawe ing sawijining komponen, kanthi pilihan respond, messages lan id.

NuiChatSession: Properti
JenengJinisGawanKatrangan
respondProperti(request) => NuiChatReplyDuweke panjenengan: nulis jawaban kanggo request.messages, lan mandheg nalika request.signal dibatalake.
messagesPropertiSignal<NuiChatMessage[]>Obrolan ing layar.
allPropertiSignal<NuiChatMessage[]>Saben pesen saka saben versi, kanggo disimpen lan dibalekake minangka messages.
busyPropertiSignal<boolean>Apa ana jawaban sing lagi teka.
sendMetode(text, files?) => Promise<void>Ngirim pesen lan njaluk jawaban.
stopMetode() => voidMandhegake jawaban, sing wis ditulis tetep ana.
retryMetode(message?) => Promise<void>Takon maneh. Jawaban anyar dadi versi ing sandhinge sing lawas.
editMetode(message, text) => Promise<void>Ngirim versi anyar saka salah siji pesen pangguna.
versionsMetode(message) => NuiChatMessage[]Saben versi sawijining pesen, sing paling lawas dhisik.
showMetode(message) => voidNgalih obrolan menyang versi iki.
rateMetode(message, 'up' | 'down' | null) => voidNyathet penilaian sing maca marang jawaban.
remove, load, clearMetode(…) => voidMbusak pesen lan sabanjure, ngganti obrolan, utawa miwiti saka wiwitan.

NuiChatMessage

Siji pesen. Pesen kanthi parent sing padha iku versi siji lan sijine.

NuiChatMessage: Properti
JenengJinisGawanKatrangan
id, parentPropertistring, string | nullKunci pesen, lan kunci pesen sadurunge.
roleProperti'user' | 'assistant'Sing nulis.
textPropertistringMarkdown saka asisten, teks biasa saka pangguna.
statusProperti'pending' | 'streaming' | 'done' | 'stopped' | 'error'Tahap jawaban, saka ngenteni nganti rampung.
reasoningPropertistringApa sing dipikir model sadurunge njawab.
toolsPropertiNuiChatTool[]Tool sing diceluk, kanthi kahanan, input lan output-e.
sourcesProperti{ url, title? }[]Kaca sing dienggo.
attachmentsPropertiNuiChatAttachment[]Berkas sing dikirim bareng.
ratingProperti'up' | 'down' | nullPenilaian sing maca.
dataPropertiunknownApa wae liyane sing disimpen bareng, kayata jeneng model.

NuiChatToolTemplate

Nggambar celukan tool, kayata kertu cuaca. Konteks-e ngemot celukan lan pesene.

Selector
ng-template[nuiChatTool]
NuiChatToolTemplate: Properti
JenengJinisGawanKatrangan
nuiChatToolInputstringJeneng tool. Yen ora ana, nggambar saben celukan sing ora dijenengi template liya.

NuiChatThread

Obrolan thok, kanggo tata letak panjenengan dhewe. Nampa input nui-chat sing gegayutan karo obrolan.

Selector
nui-chat-thread

NuiChatComposer

Kothak tulis thok. Nampa input nui-chat sing gegayutan karo nulis.

Selector
nui-chat-composer

NuiServerEvent

Apa sing diwetokake nuiEventStream kanggo saben event. nuiTextStream maca teks biasa lan nuiJsonStream baris JSON; katelune nampa response fetch.

NuiServerEvent: Properti
JenengJinisGawanKatrangan
eventPropertistring'message'Jeneng event.
dataPropertistringBaris data-ne, digabung.
idPropertistringId pungkasan sing dikirim stream.

NuiChatError

Throw saka respond kanggo nampilake pesene. Error liyane nampilake pesen umum, dadi ora ana rincian internal sing bocor.