Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | import type { InternalProviderAPIConfig } from '@shared/types/ai-providers/config';
import { FunctionName } from '@shared/types/api/request';
const HuggingfaceAPIConfig: InternalProviderAPIConfig = {
getBaseURL: ({ saTarget }) => {
return (
saTarget.huggingface_base_url || 'https://api-inference.huggingface.co'
);
},
headers: ({ saTarget }) => ({
Authorization: `Bearer ${saTarget.api_key}`,
}),
getEndpoint: ({ saRequestData, saTarget }) => {
const { model } = saRequestData.requestBody as { model: string };
const modelPath = saTarget.huggingface_base_url ? '' : `/models/${model}`;
switch (saRequestData.functionName) {
case FunctionName.CHAT_COMPLETE:
return `${modelPath}/v1/chat/completions`;
case FunctionName.COMPLETE:
return `${modelPath}/v1/completions`;
default:
return '';
}
},
};
export default HuggingfaceAPIConfig;
|