Git Product home page Git Product logo

jimmylv / bibigpt-v1 Goto Github PK

View Code? Open in Web Editor NEW
5.0K 32.0 672.0 10.53 MB

BibiGPT v1 · one-Click AI Summary for Audio/Video & Chat with Learning Content: Bilibili | YouTube | Tweet丨TikTok丨Dropbox丨Google Drive丨Local files | Websites丨Podcasts | Meetings | Lectures, etc. 音视频内容 AI 一键总结 & 对话:哔哩哔哩丨YouTube丨推特丨小红书丨抖音丨快手丨百度网盘丨阿里云盘丨网页丨播客丨会议丨本地文件等 (原 BiliGPT 省流神器 & AI课代表)

Home Page: https://bibigpt.co

License: GNU General Public License v3.0

Shell 0.03% TypeScript 84.61% JavaScript 2.26% CSS 12.18% Dockerfile 0.92%
bilibili gpt gpt-3 chatgpt openai youtube

bibigpt-v1's Introduction

This repo is only for v1 and supports Bilibil and YouTube!

🤖 BibiGPT: one-Click AI Summary for Audio/Video & Chat with Learning Content https://bibigpt.co

🎉 Effortlessly summarize YouTube and Bilibili videos with our AI-driven Video Summarizer. It also works for Podcasts, Twitter, Meetings, Lectures, Tiktok videos, and more. Discover a more brilliant way to learn with ChatGPT, your best AI-powered study companion! (formerly BiliGPT) "stream-saving artifact & class representative".

Alternate address: https://b.jimmylv.cn Browser extension: https://bibigpt.co/extension


🤖 BibiGPT · AI 音视频内容一键总结 & 对话 https://bibigpt.co

🎉 ChatGPT AI 音视频一键总结,轻松学习哔哩哔哩丨 YouTube 丨本地视频丨本地音频丨播客丨小红书丨抖音丨会议丨讲座丨网页等任意内容。BibiGPT 助力于成为最好的 AI 学习助理,支持免费试用!(原 BiliGPT 省流神器 & AI 课代表)(支持 iOS 快捷指令 & 微信服务号)。

备用地址:https://b.jimmylv.cn 浏览器插件: https://bibigpt.co/extension


🎬 This project summarizes YouTube/Bilibili/Twitter/TikTok/Podcast/Lecture/Meeting/... videos or audios for you using AI.

🤯 Inspired by Nutlope/news-summarizer & zhengbangbo/chat-simplifier & lxfater/BilibiliSummary

BibiGPT音视频总结神器

🚀 First Launch: 【BibiGPT】AI 自动总结 B 站视频内容,GPT-3 智能提取并总结字幕

How it works

This project uses the OpenAI ChatGPT API (specifically, gpt-3.5-turbo) and Vercel Edge functions with streaming and Upstash for Redis cache and rate limiting. It fetches the content on a Bilibili video, sends it in a prompt to the GPT-3 API to summarize it via a Vercel Edge function, then streams the response back to the application.

Saving costs

Projects like this can get expensive so in order to save costs if you want to make your own version and share it publicly, I recommend three things:

  • 1. Implement rate limiting so people can't abuse your site
  • 2. Implement caching to avoid expensive AI re-generations
  • 3. Use text-curie-001 instead of text-dacinci-003 in the summarize edge function

Running Locally

After cloning the repo, go to OpenAI to make an account and put your API key in a file called .env.

Then, run the application in the command line and it will be available at http://localhost:3000.

specific running procedure is described in this document - Chinese version

npm run dev

Deployment

Deploy the example using Vercel

Setup the env variables, by following the ./example.env file.

Support Docker

#133

# make sure setup .env file firstly
docker compose up -d

Support -> Contact Me

Star History

Star History Chart

Contributors

This project exists thanks to all the people who contribute.

bibigpt-v1's People

Contributors

conglinyizhi avatar github-actions[bot] avatar jackiexiao avatar jimmylv avatar nutlope avatar unickcheng avatar yuiffy avatar yumingc233 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bibigpt-v1's Issues

总结时报错

服务器上部署完项目之后点击“一键总结”出现如下报错
error - node_modules/@upstash/redis/esm/platforms/nodejs.js (22:0) @
error - Cannot read properties of undefined (reading 'startsWith')
null
请问这个是哪个地方 出问题了呢?
另外提个小小的建议,我觉得总结输出的内容可以适当分为“精简”“适中”和“详细”三个档位会不会更好呢?大概也能更适宜不同人的不同需求吧。

没有字幕的视频也会生成笔记

会根据视频标题和简介生成

比如av213920557
image

有时候简介内容少还会胡说八道

比如BV13k4y1b7cZ 会说什么腾讯股价历史新高了

建议如果没有字幕不默认生成笔记

🐞 错误报告 EDGE_FUNCTION_INVOCATION_FAILED

错误报告 🐞

如果您在使用此项目时遇到了错误,请在此报告,我们会尽快解决此问题。

错误描述 🤔

image

## 附加信息 📝 i deploy success, but click the button call this error, does anybody know how to fix it?

感谢您的反馈!🙏

声明一下开源协议:GPL-强制开源

最近看到很多人想要做独立部署,还是需要注意一下本项目的开源协议。(国内开发者大家都不是太在意,所以特意来说一下。)

GPL(GNU General Public License):GNU通用公共许可协议。

GPL协议的目的就是强制代码开源和免费使用。

其最大的特点就是“开源的传染性”。也就是说,假设某公司使用了具有GPL协议的代码库,那么也必须把自己的代码库开源。

ref:https://zhuanlan.zhihu.com/p/350966700?utm_id=0

请问INTERNAL_API_HOSTNAME配置自己应该怎样获取?

在复现这个程序的时候,一键部署出现了下列问题:

ready - started server on 0.0.0.0:3000, url: http://localhost:3000 info - Loaded env from D:\workspace\Python\BibiGPT-main\.env warn - Your project has@next/fontinstalled as a dependency, please use the built-innext/fontinstead. The@next/fontpackage will be removed in Next.js 14. You can migrate by runningnpx @next/codemod@latest built-in-next-font .. Read more: https://nextjs.org/docs/messages/built-in-next-font destinationdoes not start with/, http://, or https://for route {"source":"/api/:path*","destination":"api.example.com/api/:path*"}

我查看后应该是设置里的这个需要更改,请问INTERNAL_API_HOSTNAME=api.example.com是怎样获取的

填了openai的api key后点击总结会跳转到shop

错误报告 🐞

填了openai的api key后点击总结会跳转到shop

错误描述 🤔

填写了我的api key后,输入B站链接,然后会提示未知错误而不是生成总结内容

附加信息 📝

图片

感谢您的反馈!🙏

文字内容做成视频的意义🤔

科技博主把三百字的知识点写成五千字的文稿剧本,做成18分钟的视频。网网友用Ai把这18分钟视频浓缩成300字的知识点。

这就是Web3.1吗?

支持输出的语言

油管上一些中文内容,有时候会总结成英文;vice versa
希望能够自己选择输出的语言

timestamp output: 时间戳生成错误

问题描述

部分视频时间戳生成错误,具体内容见下方重现方式。

重现方式

输入视频地址,https://www.youtube.com/watch?v=e9-l34TcV_U
得到的结果,时间戳是错误的。

简短梗概:中世纪的六大误解

  • 0:00 中世纪欧洲,有人认为骑士们不洗澡、吃腐肉、认为地球是平的、保护戴贞操带的少女、用恶毒的刑具折磨敌人。
  • 0:00 但这些都是小说,而非事实。
  • 0:00 中世纪被定义为从公元五世纪罗马帝国灭亡到15世纪意大利文艺复兴的一千年时期。
  • 0:00 中世纪人并非全都无知无识,识字率逐渐提高,古希腊罗马的文献也在被研究。
  • 0:01 中世纪人并未食用腐肉,而是有方法安全地保存肉类,香料也不是所有人都能负担得起的。
  • 0:01 中世纪并非没有洗澡,公共浴室很常见,人们使用动物脂肪、灰烬和香草等物制成的肥皂洗澡。
  • 0:02 传说中的恶毒刑具很多都是后人编造的,中世纪的法律程序也并

#BibiGPT自动总结 b.jimmylv.cn @吕立青_JimmyLv
BV1fX4y1Q7Ux

功能改善:完善字幕总结功能(字幕 AI 自动修正 + 字幕手动更改)

功能改善建议 🚀

完善字幕总结功能

您的建议是什么? 🤔

  1. 目前很多视频都是自动生成字幕的。对于没有字幕的视频,是否可以接入自动生成字幕的部分来生成字幕,这样就解决了无字幕视频的总结问题
  2. 对于自动生成的字幕,很多存在识别错误,完全可以用chatgpt在严格限制下修复一些明显的错误,改善体验(其实这个功能可以改善目前ai配字幕的效果)
  3. 能否添加对字幕的更改功能,完成在总结页面的全程手动修改

b站分p视频怎么处理

带p=x的视频,都只能获取第一个视频,一顿狂搜也没找到分p视频分开提取BV号的方法。

一些技术性的提问

看了你的项目之后我想用python在我自己的项目里也实现一下这个功能,想问问几个问题

  • 提示词是怎么设计的
  • 对于过长字幕(例如上万字的文案)是如何处理的
  • 如果是 ChatGPT Plus 而不是 OpenAI API 的话用请求库能不能复刻这个功能

🐞 错误报告

错误报告 🐞

如果您在使用此项目时遇到了错误,请在此报告,我们会尽快解决此问题。

错误描述 🤔

图片中反应目前总结返回的信息出现了两个问题

  • 格式错误
  • 总结的视频内容错误(不是我需要的视频)

图片

附加信息 📝

操作方法

process input: 总结的内容 文不对视频呀

总结出来的内容不是视频里讲的

测试视频 :https://www.youtube.com/watch?v=JVOzntXOGRc
测试结果:
该视频讲述了人类不能知道的秘密和人族的故事。
视频中出现了一段歌曲,歌词讲述了男主角对女主角的深爱和秘密。
该视频由姚政监制,刘畅企划,丁柏昕统筹,徐思灵和黄紫嫣负责推广。
这个视频是由网易音乐人和飓风工作室联合出品的。
视频中有一些未知的秘密和故事,值得我们去探索和发现。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.