Compare commits

...

12 Commits

Author SHA1 Message Date
MikeHughes-BIN 3053674888 documents storage folder for generated documents 2025-11-11 00:27:11 +01:00
MikeHughes-BIN 6c7bd4661a Modified the description 2025-11-11 00:12:29 +01:00
MikeHughes-BIN e7271f216a Developed an API integration for Google Gemini AI to automatically generate Markdown documentation from transcripts. 2025-11-11 00:11:42 +01:00
Aarthi Manivannan, Premanathan Aarthi Manivannan af794e0245 Merge branch 'feature/ci-pipeline-s1-09a-1' into 'develop'
Feature/ci pipeline s1 09a 1

See merge request proj-wise2526-video2document/video2document!7
2025-11-10 18:07:55 +01:00
Aarthi Manivannan, Premanathan Aarthi Manivannan fb173a4041 Update .gitlab-ci.yml file 2025-11-06 16:21:01 +01:00
Aarthi Manivannan, Premanathan Aarthi Manivannan b70680e950 Ci file 2025-11-06 16:00:28 +01:00
Aarthi Manivannan, Premanathan Aarthi Manivannan a069452f87 requirements 2025-11-06 15:53:38 +01:00
Aarthi Manivannan, Premanathan Aarthi Manivannan fd4d342eeb Delete .gitlab-ci.yml 2025-11-06 15:52:45 +01:00
Aarthi Manivannan, Premanathan Aarthi Manivannan 70221683c3 tesing 2025-11-06 15:51:56 +01:00
Aarthi Manivannan, Premanathan Aarthi Manivannan a92e33fa59 Add new directory 2025-11-06 15:51:08 +01:00
Aarthi Manivannan, Premanathan Aarthi Manivannan 0dc2ebe99c App 2025-11-06 15:50:10 +01:00
Aarthi Manivannan, Premanathan Aarthi Manivannan a0fe1a80e3 Add new directory 2025-11-06 15:49:27 +01:00
10 changed files with 1617 additions and 10 deletions
+31 -4
View File
@@ -1,6 +1,33 @@
build-job:
workflow:
rules:
# Run the pipeline for merge requests or when committing to a branch
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
- if: $CI_COMMIT_BRANCH
image: python:3.14.0
stages:
- setup
- test
setup_environment:
stage: setup
script:
- echo "Building the Project.."
test-job:
- pip install --upgrade pip
- pip install -r requirements.txt
- echo "Dependencies installed successfully."
only:
- main
- feature/ci-pipeline-s1-09a-1 # You can add more branches if needed
test_app:
stage: test
script:
- echo "Running Tests.."
- echo "Running V2D Framework basic test..."
- python -m unittest discover || echo "No tests found."
only:
- main
- feature/ci-pipeline-s1-09a-1
View File
+7
View File
@@ -0,0 +1,7 @@
from fastapi import FastAPI
app = FastAPI()
@app.get("/health")
def health_check():
return {"status": "ok"}
+1532
View File
File diff suppressed because it is too large Load Diff
+3 -4
View File
@@ -1,10 +1,11 @@
{
"type": "module",
"dependencies": {
"@google/genai": "^1.29.0",
"cli-progress": "^3.12.0",
"express": "^5.1.0",
"ffmpeg-static": "^5.2.0",
"fluent-ffmpeg": "^2.1.3",
"express": "^5.1.0"
"fluent-ffmpeg": "^2.1.3"
},
"devDependencies": {
"@types/cli-progress": "^3.11.6",
@@ -31,5 +32,3 @@
"author": "",
"license": "ISC"
}
+3
View File
@@ -0,0 +1,3 @@
fastapi
uvicorn
pytest
@@ -0,0 +1,31 @@
import { GoogleGenAI } from "@google/genai";
import fs from "fs";
// Mike Hughes 10/11/25 - Code inspired from
// https://www.geeksforgeeks.org/javascript/javascript-program-to-read-text-file/ for reading text files in JS
// and from https://ai.google.dev/gemini-api/docs/quickstart?hl=de for using Gemini API
// Before using, make sure to export the Google Gemini API key as an environment variable:
// export GOOGLE_API_KEY="your_api_key_here"
// Keys can be obtained from https://aistudio.google.com/app/api-keys
// Also make sure to install the package via sudo npm install @google/genai
const ai = new GoogleGenAI({});
let transcript = "";
async function main() {
try {
const transcript = await fs.promises.readFile('../../../../storage/transcripts/Kurzgesagt.txt', 'utf-8');
const response = await ai.models.generateContent({
model: "gemini-2.5-flash",
contents: `Create a short documentation about the content of the following transcript:\n\n${transcript}`,
});
console.log(response.text);
fs.writeFileSync("../../../../storage/documents/Kurzgesagt_documentation.md", response.text, "utf8");
} catch (error) {
console.error('Error generating content:', error);
}
}
main();
View File
View File
+8
View File
@@ -0,0 +1,8 @@
from fastapi.testclient import TestClient
from app.main import app
client = TestClient(app)
def test_health():
response = client.get("/health")
assert response.status_code == 200