chenpei d0dc94e36d feat: 将弹幕功能替换为AI聊天助手
新功能:
- 创建AI聊天助手组件(AIChatWidget)
- 支持文字+图片多模态对话
- 集成Gemini AI API
- 支持图片编辑和内容生成
- 实时对话历史管理
- 优雅的UI设计,支持黑夜模式

技术实现:
- 后端API代理Gemini API(/api/ai-chat)
- 支持最多5张图片上传
- 流式响应处理
- 对话历史管理
- Base64图片处理

配置:
- 在.env中添加Gemini API配置
- GEMINI_API_KEY
- GEMINI_API_BASE_URL
- GEMINI_MODEL

替换原弹幕功能,提供更强大的AI助手体验!
2025-10-27 17:45:37 +08:00

92 lines
2.5 KiB
Python
Executable File

# coding: utf-8
REGION_CN_NORTH1 = "cn-north-1"
REGION_US_EAST1 = "us-east-1"
REGION_AP_SINGAPORE1 = "ap-singapore-1"
INNER_REGION_CN_NORTH1 = "cn-north-1-inner"
INNER_REGION_US_EAST1 = "us-east-1-inner"
INNER_REGION_AP_SINGAPORE1 = "ap-singapore-1-inner"
HTTP = 'http'
HTTPS = 'https'
FILE_TYPE_VIDEO = 'video'
FILE_TYPE_MEDIA = 'media'
FILE_TYPE_IMAGE = 'image'
FILE_TYPE_OBJECT = 'object'
UPLOAD_FORMAT_MP4 = 'mp4'
UPLOAD_FORMAT_M3U8 = 'm3u8'
FORMAT_JPEG = 'jpeg'
FORMAT_PNG = 'png'
FORMAT_WEBP = 'webp'
FORMAT_AWEBP = 'awebp'
FORMAT_GIF = 'gif'
FORMAT_HEIC = 'heic'
FORMAT_ORIGINAL = 'image'
VOD_TPL_OBJ = 'tplv-vod-obj'
VOD_TPL_NOOP = 'tplv-vod-noop'
VOD_TPL_RESIZE = 'tplv-vod-rs'
VOD_TPL_CENTER_CROP = 'tplv-vod-cc'
VOD_TPL_SMART_CROP = 'tplv-vod-cs'
VOD_TPL_SIG = 'tplv-bd-sig'
LETTER_RUNES = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
RESOURCE_SPACE_FORMAT = "trn:vod:%s:*:space/%s"
RESOURCE_VIDEO_FORMAT = 'trn:vod::*:video_id/%s'
RESOURCE_STREAM_TYPE_FORMAT = 'trn:vod:::stream_type/%s'
RESOURCE_WATERMARK_FORMAT = 'trn:vod::*:watermark/%s'
ACTION_VOD_GET_PLAY_INFO = "vod:GetPlayInfo"
STAR = '*'
CATEGORY_VIDEO = "video"
CATEGORY_AUDIO = "audio"
CATEGORY_IMAGE = "image"
CATEGORY_DYNAMICIMG = "dynamic_img"
CATEGORY_SUBTITLE = "subtitle"
CATEGORY_FONT = "font"
SMS_CHANNEL_TYPE_CN_OTP = "CN_OTP"
SMS_CHANNEL_TYPE_CN_NTC = "CN_NTC"
SMS_CHANNEL_TYPE_CN_MKT = "CN_MKT"
SMS_CHANNEL_TYPE_I18N_OTP = "I18N_OTP"
SMS_CHANNEL_TYPE_I18N_MKT = "I18N_MKT"
ENABLE_STATUS_NOT_ENABLE = "0"
ENABLE_STATUS_ENABLE = "1"
AREA_CN = "cn"
AREA_OVERSEAS = "overseas"
AREA_ALL = "all"
SOURCE_TYPE_TEXT = "text/string"
SOURCE_TYPE_VIDEO = "video/mp4"
SOURCE_TYPE_IMAGE_JPG = "image/jpg"
SOURCE_TYPE_IMAGE_PNG = "image/png "
SOURCE_TYPE_IMAGE_GIF = "image/gif"
SOURCE_TYPE_MP3 = "audio/mp3"
DOC_TYPE_THREE_IN_ONE = 0 # 三证合一
DOC_TYPE_BUSINESS_LICENSE = 1 # 企业营业执照
DOC_TYPE_ORGANIZATION_CODE_CERTIFICATE = 2 # 组织机构代码证
DOC_TYPE_TAX_REGISTRATION_CERTIFICATE = 3 # 税务登记证
DOC_TYPE_SOCIAL_CREDIT_CODE_CERTIFICATE = 4 # 社会信用代码证书
DOC_TYPE_POWER_OF_ATTORNEY = 5 # 授权委托书
DOC_TYPE_OTHERS = 6 # 其他 / 更多
SIGN_SOURCE_TYPE_COMPANY = "公司全称/简称"
SIGN_SOURCE_TYPE_SITE = "工信部备案网站全称/简称"
SIGN_SOURCE_TYPE_APP = "APP全称/简称"
SIGN_SOURCE_TYPE_OFFICIAL_ACCOUNTS = "公众号、小程序全称/简称"
SIGN_SOURCE_TYPE_BRAND = "商标全称/简称"
SIGN_SOURCE_TYPE_STORE = "电商平台店铺名的全称/简称"
SIGN_PURPOSE_FOR_OWN = 1
SIGN_PURPOSE_FOR_OTHER = 2