可以实现的纯界面的代码
This commit is contained in:
parent
cbfd2e97ef
commit
8e5669e5b7
21
ai.js
Normal file
21
ai.js
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
import * as Ai from '@kevisual/ai';
|
||||||
|
|
||||||
|
console.log('Chat module loaded', Ai);
|
||||||
|
|
||||||
|
const ai = new Ai.SiliconFlowProvider({
|
||||||
|
model: 'Qwen/Qwen2-7B-Instruct',
|
||||||
|
apiKey: process.env.OPENAI_API_KEY,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const chat = async (messages) => {
|
||||||
|
try {
|
||||||
|
const response = await ai.chat(messages);
|
||||||
|
return response.choices[0].message.content;
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Error in chat completion:', error);
|
||||||
|
throw error; // Re-throw the error for further handling
|
||||||
|
}
|
||||||
|
};
|
||||||
|
// Example usage
|
||||||
|
// const res = await chat([{ role: 'user', content: 'Hello, how are you?' }]);
|
||||||
|
// console.log('Chat response:', res);
|
@ -24,7 +24,9 @@
|
|||||||
<script type="importmap">
|
<script type="importmap">
|
||||||
{
|
{
|
||||||
"imports": {
|
"imports": {
|
||||||
"openai": "https://esm.sh/openai"
|
"openai": "https://esm.sh/openai",
|
||||||
|
"@kevisual/ai/": "https://esm.sh/@kevisual/ai/",
|
||||||
|
"@kevisual/ai": "https://esm.sh/@kevisual/ai"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
@ -34,6 +36,7 @@
|
|||||||
<div id="root">123</div>
|
<div id="root">123</div>
|
||||||
<script type="module" src="./env.js"></script>
|
<script type="module" src="./env.js"></script>
|
||||||
<script type="module" src="./chat.js"></script>
|
<script type="module" src="./chat.js"></script>
|
||||||
|
<script type="module" src="./ai.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
Loading…
x
Reference in New Issue
Block a user