ನಿಮ್ಮ ಬಳಕೆದಾರರು ಮತ್ತು ಮಾಡೆಲ್ ನಡುವಿನ ಎಲ್ಲವೂ ಚಾಟ್. respond ಫಂಕ್ಷನ್‌ನೊಂದಿಗೆ ಒಂದು NuiChatSession ರಚಿಸಿ, ಉಳಿದದ್ದನ್ನು <nui-chat> ನೋಡಿಕೊಳ್ಳುತ್ತದೆ: ಅದು ಉತ್ತರವನ್ನು Markdown ಆಗಿ ಸ್ಟ್ರೀಮ್ ಮಾಡುತ್ತದೆ, ಓದುಗರು ಮೇಲಕ್ಕೆ ಸ್ಕ್ರಾಲ್ ಮಾಡುವವರೆಗೆ ಪುಟದಲ್ಲಿ ಕೆಳಗೆ ಅದನ್ನು ಹಿಂಬಾಲಿಸುತ್ತದೆ, ಮತ್ತು ಉತ್ತರ ಬರುತ್ತಿರುವಾಗ ಕಳುಹಿಸುವ ಬಟನ್ ಅನ್ನು ನಿಲ್ಲಿಸುವ ಬಟನ್ ಆಗಿ ಬದಲಿಸುತ್ತದೆ.

respond ಪಠ್ಯ, promise, async function* ಅಥವಾ Observable ಅನ್ನು ಹಿಂದಿರುಗಿಸುತ್ತದೆ, ಹಾಗಾಗಿ ಯಾವುದೇ API ಹೊಂದುತ್ತದೆ. ಪಠ್ಯದ ಜೊತೆಗೆ, ಉತ್ತರದಲ್ಲಿ ಮಾಡೆಲ್‌ನ ರೀಸನಿಂಗ್, ಅದರ ಟೂಲ್ ಕರೆಗಳು (ನಿಮ್ಮ ಟೆಂಪ್ಲೇಟ್‌ಗಳು ಬಿಡಿಸುವವು) ಮತ್ತು ಅದು ಬಳಸಿದ ಮೂಲಗಳೂ ಇರಬಹುದು. ಹೆಚ್ಚಿನ ಮಾಡೆಲ್ API ಗಳು ಸ್ಟ್ರೀಮ್ ಮಾಡುವ server-sent events ಅನ್ನು nuiEventStream ಓದುತ್ತದೆ.

ಏನೂ ಕಳೆದುಹೋಗುವುದಿಲ್ಲ: ಮರುಪ್ರಯತ್ನಿಸಿದ ಉತ್ತರ ಅಥವಾ ಎಡಿಟ್ ಮಾಡಿದ ಪ್ರಶ್ನೆ ಹಳೆಯದರ ಪಕ್ಕದಲ್ಲೇ ಹೊಸ ಆವೃತ್ತಿಯಾಗುತ್ತದೆ, ಮತ್ತು ಸಂಭಾಷಣೆ ಪ್ರತಿಯೊಂದು ಶಾಖೆಯನ್ನೂ ಉಳಿಸಿಕೊಳ್ಳುತ್ತದೆ. ಸ್ಕ್ರೀನ್ ರೀಡರ್‌ಗಳು ಪ್ರತಿ ಉತ್ತರವನ್ನು ಪದ ಪದವಾಗಿ ಅಲ್ಲ, ಪೂರ್ಣಗೊಂಡ ನಂತರವೇ ಓದುತ್ತವೆ.

ಒಂದು ಅಸಿಸ್ಟೆಂಟ್

ಸಲಹೆಗಳು ಸಂಭಾಷಣೆಯನ್ನು ಆರಂಭಿಸುತ್ತವೆ. ಉತ್ತರಗಳು Markdown ಆಗಿ ಸ್ಟ್ರೀಮ್ ಆಗುತ್ತವೆ; ಅವನ್ನು ನಿಲ್ಲಿಸಿ, ಮರುಪ್ರಯತ್ನಿಸಿ, ರೇಟ್ ಮಾಡಿ, ಅಥವಾ ನಿಮ್ಮ ಪ್ರಶ್ನೆಯನ್ನು ಎಡಿಟ್ ಮಾಡಿ. ಆರಿಸಿದ, ಪೇಸ್ಟ್ ಮಾಡಿದ ಅಥವಾ ಡ್ರಾಪ್ ಮಾಡಿದ ಫೈಲ್‌ಗಳನ್ನು attach ಸ್ವೀಕರಿಸುತ್ತದೆ.

ರೀಸನಿಂಗ್, ಟೂಲ್‌ಗಳು ಮತ್ತು ಮೂಲಗಳು

ಡೆಲ್ಟಾಗಳು ಮಾಡೆಲ್‌ನ ರೀಸನಿಂಗ್, ಟೂಲ್ ಕರೆಗಳು ಮತ್ತು ಮೂಲಗಳನ್ನು ಉತ್ತರಕ್ಕೆ ಸೇರಿಸುತ್ತವೆ. nuiChatTool ಹವಾಮಾನ ಟೂಲ್ ಅನ್ನು ಕಾರ್ಡ್ ಆಗಿ ಬಿಡಿಸುತ್ತದೆ; ಉಳಿದ ಟೂಲ್‌ಗಳು ತಮ್ಮ ಇನ್‌ಪುಟ್ ಮತ್ತು ಔಟ್‌ಪುಟ್‌ನೊಂದಿಗೆ ಮಡಚಿಕೊಂಡಿರುತ್ತವೆ.

ಸರ್ವರ್‌ನಿಂದ ಸ್ಟ್ರೀಮಿಂಗ್

nuiEventStream OpenAI ಶೈಲಿಯ ಈವೆಂಟ್ ಸ್ಟ್ರೀಮ್ ಅನ್ನು ಓದುತ್ತದೆ, ಮತ್ತು NuiChatError ತನ್ನ ಸಂದೇಶವನ್ನು ತೋರಿಸುತ್ತದೆ. all() ಸಂಭಾಷಣೆಯನ್ನು ಆವೃತ್ತಿಗಳ ಸಹಿತ ಪೂರ್ತಿಯಾಗಿ ಉಳಿಸುತ್ತದೆ.