Note: The gemini-pro-vision model (for text-and-image input) is not yet optimized for multi-turn conversations. Make sure to use gemini-pro and text-only input for chat use cases.

This commit is contained in:
ikechan8370 2023-12-15 20:26:05 +08:00
parent 4dc5d6fe77
commit 22dcb0405b
5 changed files with 185 additions and 111 deletions

View file

@ -1030,6 +1030,25 @@ export function getUserSpeaker (userSetting) {
}
}
/**
* 获取或者下载文件如果文件存在则直接返回不会重新下载
* @param destPath 相对路径如received/abc.pdf
* @param url
* @param ignoreCertificateError 忽略证书错误
* @return {Promise<string>} 最终下载文件的存储位置
*/
export async function getOrDownloadFile (destPath, url, ignoreCertificateError = true) {
const _path = process.cwd()
let dest = path.join(_path, 'data', 'chatgpt', destPath)
const p = path.dirname(dest)
mkdirs(p)
if (fs.existsSync(dest)) {
return dest
} else {
return await downloadFile(url, destPath, false, ignoreCertificateError)
}
}
/**
*
* @param url 要下载的文件链接