Keural Kit
உங்கள் இணையச் சேவைக்குள் Keural அரட்டை, இயக்ககம் மற்றும் prompt திரைகளைச் சேர்க்கும் உட்பொதிப்பு ஸ்கிரிப்ட்.
Keural Kit ஒரே ஒரு ஸ்கிரிப்ட் மூலம் Keural திரைகளை உங்கள் பக்கத்தில் சேர்க்கிறது. திரைகள் Shadow DOM உள்ளே வரையப்படுவதால் உங்கள் பக்கத்தின் CSS உடன் கலக்காது. Kit, Keural இணைய வெளியீட்டின்போது புதுப்பிக்கப்படும். வெளியீட்டிற்குப் பிறகும் பழைய திரை தெரிந்தால், உலாவி மற்றும் CDN தற்காலிக சேமிப்பை அழித்து, window.KeuralKit.__build மூலம் உருவாக்கப்பட்ட நேரத்தைச் சரிபார்க்கவும்.
Kit, Keural உள்நுழைவு அமர்வுடன் (Keural API டொமைனின் குக்கீ) இயங்கும். userInfo காட்சிக்கு மட்டுமே; பயனர் சரிபார்ப்பு குக்கீ அமர்வு மூலம் நடைபெறும். உங்கள் சேவை டொமைனில் பயன்படுத்த வேண்டுமெனில், பயன்பாட்டுக்கு முன் டொமைன் பதிவு மற்றும் உள்நுழைவு ஒருங்கிணைப்பு (SSO போன்றவை) பற்றி Keural பொறுப்பாளருடன் ஒருங்கிணையுங்கள்.
ஏற்றுதல்
Kit, நீங்கள் பயன்படுத்தும் Keural சூழலின் இணைய முகவரியிலிருந்து ஏற்றப்படுகிறது. keural.ai பயன்படுத்தினால் முகவரி https://keural.ai. ஆன்-பிரீமைசஸ் அல்லது பிரத்யேகச் சூழலாக இருந்தால், அந்தச் சூழலின் Keural இணைய முகவரியைப் பயன்படுத்தவும். ஸ்கிரிப்டைச் சேர்ப்பதற்கு முன், Kit அழைக்கும் சேவையக முகவரிகளை window.__KEURAL_ENV__ இல் வையுங்கள். மூன்று முகவரிகளும் ஒரே சூழலைச் சேர்ந்தவையாக இருக்க வேண்டும்; இணைக்கும்போது Keural தொடர்பாளரிடம் பெறவும்.
<script>
window.__KEURAL_ENV__ = {
NEXT_PUBLIC_API_BASE_URL: '<KEURAL_API_URL>',
NEXT_PUBLIC_FAST_API_BASE_URL: '<KEURAL_AGENT_URL>',
NEXT_PUBLIC_MODE: 'prd',
};
</script>
<script src="<KEURAL_WEB_URL>/plugin/kit/keural.js" async></script>| மதிப்பு | விளக்கம் |
|---|---|
<KEURAL_WEB_URL> | Keural இணைய முகவரி. எடுத்துக்காட்டு: https://keural.ai |
<KEURAL_API_URL> | Keural API சேவையக முகவரி. எடுத்துக்காட்டு: https://api.keural.ai |
<KEURAL_AGENT_URL> | Keural முகவர் சேவையக முகவரி |
NEXT_PUBLIC_MODE | உற்பத்திக்கு prd, மேம்பாட்டுக்கு dev |
இதே Kit ஐ இரண்டாவது டொமைனிலும் பயன்படுத்தினால், NEXT_PUBLIC_ADDITIONAL_FRONTEND_URL, NEXT_PUBLIC_ADDITIONAL_API_BASE_URL, NEXT_PUBLIC_ADDITIONAL_FAST_API_BASE_URL ஆகிய மூன்று மதிப்புகளையும் சேர்த்து வழங்கவும். ஒன்று விடுபட்டாலும் பிழை ஏற்படும். மதிப்புகள் பாதை இல்லாத https:// முகவரிகள்.
ஸ்கிரிப்ட் ஏற்றப்பட்டதும் window.KeuralKit கிடைக்கும். React போன்ற SPA களில், ஸ்கிரிப்ட் ஒருமுறை மட்டுமே சேர்க்கப்படும்படி ஏற்றியை உருவாக்கிப் பயன்படுத்தவும்.
export function loadKeuralKit(src = '<KEURAL_WEB_URL>/plugin/kit/keural.js') {
if (window.KeuralKit) return Promise.resolve(window.KeuralKit);
return new Promise((resolve, reject) => {
const s = document.createElement('script');
s.src = src;
s.async = true;
s.onload = () => resolve(window.KeuralKit);
s.onerror = () => {
s.remove();
reject(new Error('Keural Kit failed to load'));
};
document.head.appendChild(s);
});
}அரட்டையைச் சேர்த்தல்
const el = document.getElementById('keural-chat')!;
window.KeuralKit.mountChat(el, {
userInfo: { userId: user.id, name: user.name },
colorMode: 'light',
initialData: { message: 'இந்தக் காலாண்டு விற்பனையைச் சுருக்கித் தாருங்கள்', room_name: 'காலாண்டு அறிக்கை' },
onSessionCreated: (roomId) => router.push(`/c/${roomId}`),
onError: () => router.push('/'),
});
// திரையை விட்டு வெளியேறும்போது
window.KeuralKit.unmount(el);- ஏற்கனவே உள்ள உரையாடலைத் திறக்க,
sessionIdஇல் உரையாடல் ID ஐ வையுங்கள். initialDataஐ புதிய உரையாடலைத் திறக்கும்போது மட்டுமே சேர்க்கவும். ஏற்கனவே உள்ள உரையாடலை மீண்டும் திறக்கும்போது சேர்த்தால் அதே செய்தி மீண்டும் அனுப்பப்படும்.userInfo.userIdஇல்லையெனில் பயனர் உள்நுழையாதவராகக் கருதப்படுவார். உள்நுழைவுத் தகவல் தயாரான பின்னர் mount செய்யவும்.
முறைகள்
| முறை | விளக்கம் |
|---|---|
mountChat(el, options) | அரட்டைத் திரை |
mountDrivePage(el, options) | இயக்ககத் திரை. கேள்வி கேட்க வேண்டிய கோப்புகளை onAsk(files) மூலம் பெறுகிறது |
mountPromptPage(el, options) | prompt திரை. தேர்ந்தெடுத்த prompt களை onAsk(prompts) மூலம் பெறுகிறது |
mountDriveDialog(el, options) / updateDriveDialog | இயக்ககக் கோப்புத் தேர்வுச் சாளரம் (open கட்டாயம், onClose, onSelect(files), initialSelected) |
mountPromptDialog(el, options) / updatePromptDialog | prompt தேர்வுச் சாளரம் (open கட்டாயம், onClose, onSelect, onDefaultSelect, selectDefaultPrompt, defaultPromptDismissed) |
unmount(el) | mount செய்யப்பட்ட திரையை அகற்றும் |
mount* மற்றும் update* முறைகள் colorMode மற்றும் userInfo ஐ ஒன்றாகப் பெறும். unmount(el) உறுப்பை மட்டுமே பெறும். update* அதே உறுப்பில் புதிய விருப்பங்களுடன் மீண்டும் வரையும். சாளரத்தைத் திறந்து மூடும்போது open மதிப்பை மாற்றி update* ஐ அழைக்கவும். அதே உறுப்பில் மீண்டும் mount* செய்தால் ஏற்கனவே உள்ள திரை மீண்டும் பயன்படுத்தப்படும்.
mountChat விருப்பங்கள்
| விருப்பம் | வகை | விளக்கம் |
|---|---|---|
sessionId | string | திறக்க வேண்டிய உரையாடல் ID. இல்லையெனில் புதிய உரையாடல் |
userInfo | { userId, name?, orgId?, orgName? } | பயனர் தகவல். userId கட்டாயம் |
initialData | object | புதிய உரையாடலின் முதல் செய்தி. கீழே உள்ள initialData ஐப் பார்க்கவும் |
colorMode | 'light' | 'dark' | தீம். இயல்பு light |
initialEffort | 'fast' | 'balanced' | 'high' | 'xhigh' | 'max' | தொடக்க நிலை. இயல்பு fast |
initialWebSearch | boolean | வலைத் தேடல் இயக்கத்துடன் தொடங்கும். இயல்பு true |
initialDeepResearch | boolean | Deep Research இயக்கத்துடன் தொடங்கும் |
hideHomeButton / hideNewChatButton | boolean | தலைப்பில் உள்ள பொத்தான்களை மறைக்கும் |
hideModePopup | boolean | பயன்முறைத் தேர்வுப் பாப்-அப்பை மறைக்கும் |
messageActions | { id, label, onClick(messageId) }[] | பதில் மெனுவில் உங்கள் செயலைச் சேர்க்கும் |
headerLeftActions / headerRightActions | HeaderLeftAction[] | தலைப்பில் உங்கள் பொத்தான்களைச் சேர்க்கும் |
onHeaderLeftMount | (el: HTMLElement) => void | தலைப்பின் இடது பகுதி வரையப்பட்டதும் அந்த உறுப்பைப் பெறும் |
mobileMenuItems / mobileBottomActions | array | மொபைல் அகலத்தில் மெனு மற்றும் கீழ்ப் பொத்தான்களைச் சேர்க்கும் |
onMobileHomeButton | () => void | மொபைல் அகலத்தில் முகப்புப் பொத்தான் அழுத்தப்படும்போது |
chatInputFooter | string | உள்ளீட்டுப் பெட்டிக்குக் கீழே உள்ள குறிப்பு உரை |
shareTooltip | string | பகிர் பொத்தானின் டூல்டிப் உரை |
onSessionCreated | (roomId) => void | புதிய உரையாடல் உருவாக்கப்படும்போது |
onStreamDone | (roomId) => void | பதில் முடிந்ததும் |
onSummaryDone | (roomId) => void | உரையாடலின் தலைப்பும் சுருக்கமும் உருவாக்கப்படும்போது |
onRoomInfo | (info) => void | உரையாடல் தகவல் மாறும்போது |
onShare / onExport | (roomId) => void | பகிர் அல்லது ஏற்றுமதி பொத்தான் அழுத்தப்படும்போது |
onError | (error: Error) => void | பிழை ஏற்படும்போது |
initialData
| புலம் | வகை | விளக்கம் |
|---|---|---|
message | string | கட்டாயம். முதல் செய்தி |
files | FileType[] | உடன் அனுப்ப வேண்டிய இயக்ககக் கோப்புகள் (mountDriveDialog இன் onSelect மூலம் பெற்ற மதிப்பு) |
prompts | object[] | உடன் பயன்படுத்த வேண்டிய prompt கள் |
webSearch | boolean | வலைத் தேடல் |
deepResearch | boolean | Deep Research |
effort | 'fast' | 'balanced' | 'high' | 'xhigh' | 'max' | நிலை |
model | { label, value } | பதில் அளிக்க வேண்டிய மாதிரி |
room_name | string | உரையாடலின் பெயர். roomName, title, name ஆகியவற்றையும் ஏற்கும். |
folder_id | string | null | சேமிக்க வேண்டிய கோப்புறை |
hideModePopup | boolean | பயன்முறைத் தேர்வுப் பாப்-அப்பை மறைக்கும் |
திரை மொழி
Kit திரை கொரிய மொழியில் காட்டப்படும்.
அமைப்புகளும் உள்நுழைவும்
- பயனர் அமைப்புகளை Keural இணையம் அல்லது செயலியில் மாற்றலாம். Kit திரை அந்த அமைப்புகளைப் பின்பற்றும்.
- உள்நுழைவை உங்கள் சேவை கையாளும்; Kit க்கு உள்நுழைந்த பயனர் தகவல் மட்டும் அனுப்பப்படும்.