Spaces:
Configuration error
Configuration error
Deploy fix – 2025-06-04: sync, gradio refactor, requirements update
Browse files- .github/workflows/deploy.yml +25 -13
- .gitignore +3 -57
- Aethero_App/gradio_interface.py +28 -0
- Aethero_App/lucius_report.md +62 -91
- Aethero_App/publish/push_to_hf.py +9 -5
- requirements.txt +25 -1
- vercel.json +15 -2
.github/workflows/deploy.yml
CHANGED
|
@@ -4,31 +4,43 @@ on:
|
|
| 4 |
push:
|
| 5 |
branches:
|
| 6 |
- main
|
|
|
|
| 7 |
|
| 8 |
jobs:
|
| 9 |
-
|
| 10 |
runs-on: ubuntu-latest
|
| 11 |
|
| 12 |
steps:
|
| 13 |
- name: Checkout code
|
| 14 |
uses: actions/checkout@v3
|
| 15 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 16 |
- name: Set up Docker Buildx
|
| 17 |
uses: docker/setup-buildx-action@v2
|
| 18 |
|
| 19 |
-
- name:
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
|
|
|
| 24 |
|
| 25 |
- name: Build and push Docker image
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
push:
|
| 31 |
-
tags: ${{ secrets.DOCKER_USERNAME }}/crewai:latest
|
| 32 |
|
| 33 |
- name: Deploy to Vercel
|
| 34 |
-
|
|
|
|
|
|
|
|
|
| 4 |
push:
|
| 5 |
branches:
|
| 6 |
- main
|
| 7 |
+
pull_request:
|
| 8 |
|
| 9 |
jobs:
|
| 10 |
+
deploy:
|
| 11 |
runs-on: ubuntu-latest
|
| 12 |
|
| 13 |
steps:
|
| 14 |
- name: Checkout code
|
| 15 |
uses: actions/checkout@v3
|
| 16 |
|
| 17 |
+
- name: Configure safe directory
|
| 18 |
+
run: |
|
| 19 |
+
git config --global --add safe.directory /home/runner/work/Aethero_github/Aethero_github
|
| 20 |
+
|
| 21 |
+
- name: Update submodules
|
| 22 |
+
run: |
|
| 23 |
+
git submodule sync
|
| 24 |
+
git submodule update --init --recursive
|
| 25 |
+
|
| 26 |
- name: Set up Docker Buildx
|
| 27 |
uses: docker/setup-buildx-action@v2
|
| 28 |
|
| 29 |
+
- name: Login to Docker
|
| 30 |
+
env:
|
| 31 |
+
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
|
| 32 |
+
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
|
| 33 |
+
run: |
|
| 34 |
+
echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
|
| 35 |
|
| 36 |
- name: Build and push Docker image
|
| 37 |
+
env:
|
| 38 |
+
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
|
| 39 |
+
run: |
|
| 40 |
+
docker build -t $DOCKER_USERNAME/crewai:latest .
|
| 41 |
+
docker push $DOCKER_USERNAME/crewai:latest
|
|
|
|
| 42 |
|
| 43 |
- name: Deploy to Vercel
|
| 44 |
+
env:
|
| 45 |
+
VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }}
|
| 46 |
+
run: npx vercel --prod --token $VERCEL_TOKEN
|
.gitignore
CHANGED
|
@@ -17,13 +17,11 @@ coverage.xml
|
|
| 17 |
*.cover
|
| 18 |
*.log
|
| 19 |
|
| 20 |
-
# Node.js
|
| 21 |
node_modules/
|
| 22 |
npm-debug.log*
|
| 23 |
yarn-debug.log*
|
| 24 |
yarn-error.log*
|
| 25 |
-
lerna-debug.log*
|
| 26 |
-
.pnpm-debug.log*
|
| 27 |
|
| 28 |
# Deployment
|
| 29 |
.vercel
|
|
@@ -43,61 +41,9 @@ lerna-debug.log*
|
|
| 43 |
ehthumbs.db
|
| 44 |
Thumbs.db
|
| 45 |
|
| 46 |
-
# Diagnostic reports (https://nodejs.org/api/report.html)
|
| 47 |
-
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
| 48 |
-
|
| 49 |
-
# Runtime data
|
| 50 |
-
pids
|
| 51 |
-
*.pid
|
| 52 |
-
*.seed
|
| 53 |
-
*.pid.lock
|
| 54 |
-
|
| 55 |
-
# Optional npm cache directory
|
| 56 |
-
.npm
|
| 57 |
-
|
| 58 |
-
# Optional eslint cache
|
| 59 |
-
.eslintcache
|
| 60 |
-
|
| 61 |
-
# Yarn Integrity file
|
| 62 |
-
.yarn-integrity
|
| 63 |
-
|
| 64 |
-
# parcel-bundler cache (https://parceljs.org/)
|
| 65 |
-
.cache
|
| 66 |
-
.parcel-cache
|
| 67 |
-
|
| 68 |
-
# Next.js build output
|
| 69 |
-
.next
|
| 70 |
-
out
|
| 71 |
-
|
| 72 |
-
# Nuxt.js build / generate output
|
| 73 |
-
.nuxt
|
| 74 |
-
dist
|
| 75 |
-
|
| 76 |
-
# Docusaurus cache and generated files
|
| 77 |
-
.docusaurus
|
| 78 |
-
|
| 79 |
# AetheroOS specific
|
| 80 |
*.log
|
| 81 |
aethero_cognitive_flow.log
|
| 82 |
|
| 83 |
-
#
|
| 84 |
-
|
| 85 |
-
|
| 86 |
-
# FuseBox cache
|
| 87 |
-
.fusebox/
|
| 88 |
-
|
| 89 |
-
# DynamoDB Local files
|
| 90 |
-
.dynamodb/
|
| 91 |
-
|
| 92 |
-
# TernJS port file
|
| 93 |
-
.tern-port
|
| 94 |
-
|
| 95 |
-
# Stores VSCode versions used for testing VSCode extensions
|
| 96 |
-
.vscode-test
|
| 97 |
-
|
| 98 |
-
# yarn v2
|
| 99 |
-
.yarn/cache
|
| 100 |
-
.yarn/unplugged
|
| 101 |
-
.yarn/build-state.yml
|
| 102 |
-
.yarn/install-state.gz
|
| 103 |
-
.pnp.*
|
|
|
|
| 17 |
*.cover
|
| 18 |
*.log
|
| 19 |
|
| 20 |
+
# Node.js
|
| 21 |
node_modules/
|
| 22 |
npm-debug.log*
|
| 23 |
yarn-debug.log*
|
| 24 |
yarn-error.log*
|
|
|
|
|
|
|
| 25 |
|
| 26 |
# Deployment
|
| 27 |
.vercel
|
|
|
|
| 41 |
ehthumbs.db
|
| 42 |
Thumbs.db
|
| 43 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 44 |
# AetheroOS specific
|
| 45 |
*.log
|
| 46 |
aethero_cognitive_flow.log
|
| 47 |
|
| 48 |
+
# API cache
|
| 49 |
+
api/__pycache__/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Aethero_App/gradio_interface.py
CHANGED
|
@@ -1,4 +1,7 @@
|
|
| 1 |
import gradio as gr
|
|
|
|
|
|
|
|
|
|
| 2 |
from aslr_analyzer import ASLAnalyzer
|
| 3 |
|
| 4 |
def analyze_text_with_visuals(input_text):
|
|
@@ -21,6 +24,22 @@ def analyze_text_with_visuals(input_text):
|
|
| 21 |
|
| 22 |
return radar_chart_path
|
| 23 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 24 |
iface = gr.Interface(
|
| 25 |
fn=analyze_text_with_visuals,
|
| 26 |
inputs="text",
|
|
@@ -29,5 +48,14 @@ iface = gr.Interface(
|
|
| 29 |
description="Analyze text and visualize emotions with radar charts."
|
| 30 |
)
|
| 31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 32 |
if __name__ == "__main__":
|
| 33 |
iface.launch()
|
|
|
|
|
|
| 1 |
import gradio as gr
|
| 2 |
+
import os
|
| 3 |
+
from aethero_monumentum_ignis import run_orchestration
|
| 4 |
+
from datetime import datetime
|
| 5 |
from aslr_analyzer import ASLAnalyzer
|
| 6 |
|
| 7 |
def analyze_text_with_visuals(input_text):
|
|
|
|
| 24 |
|
| 25 |
return radar_chart_path
|
| 26 |
|
| 27 |
+
def orchestrate_and_return_log(_):
|
| 28 |
+
"""
|
| 29 |
+
Spustí orchestráciu a vráti cestu k log súboru.
|
| 30 |
+
"""
|
| 31 |
+
# Spustenie orchestrácie
|
| 32 |
+
run_orchestration()
|
| 33 |
+
# Presun final_prompt.txt do memory/orchestration_logs/ s timestampom
|
| 34 |
+
ts = datetime.now().strftime("%Y%m%d_%H%M%S")
|
| 35 |
+
os.makedirs("memory/orchestration_logs", exist_ok=True)
|
| 36 |
+
src = "final_prompt.txt"
|
| 37 |
+
dst = f"memory/orchestration_logs/orchestration_{ts}.txt"
|
| 38 |
+
if os.path.exists(src):
|
| 39 |
+
os.rename(src, dst)
|
| 40 |
+
return dst
|
| 41 |
+
return "Orchestration log not found."
|
| 42 |
+
|
| 43 |
iface = gr.Interface(
|
| 44 |
fn=analyze_text_with_visuals,
|
| 45 |
inputs="text",
|
|
|
|
| 48 |
description="Analyze text and visualize emotions with radar charts."
|
| 49 |
)
|
| 50 |
|
| 51 |
+
iface_orchestrate = gr.Interface(
|
| 52 |
+
fn=orchestrate_and_return_log,
|
| 53 |
+
inputs=None,
|
| 54 |
+
outputs="text",
|
| 55 |
+
title="Aethero Orchestration Trigger",
|
| 56 |
+
description="Spustí orchestráciu všetkých agentov a uloží log do memory/orchestration_logs/."
|
| 57 |
+
)
|
| 58 |
+
|
| 59 |
if __name__ == "__main__":
|
| 60 |
iface.launch()
|
| 61 |
+
iface_orchestrate.launch()
|
Aethero_App/lucius_report.md
CHANGED
|
@@ -1,76 +1,17 @@
|
|
| 1 |
-
#
|
| 2 |
|
| 3 |
-
**
|
| 4 |
-
**
|
| 5 |
-
**Projekt:** Aethero Cognitive Flow - FastAPI Server Development
|
| 6 |
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
### ✅ Dokončené úlohy
|
| 14 |
-
|
| 15 |
-
1. **Nastavenie prostredia**
|
| 16 |
-
- Vytvorený a aktivovaný virtuálny environment
|
| 17 |
-
- Inštalované všetky potrebné závislosti (`uvicorn`, `fastapi`, `pydantic`, `websockets`, `transformers`)
|
| 18 |
-
- Overené prítomnosť kľúčových súborov
|
| 19 |
-
|
| 20 |
-
2. **Oprava importov**
|
| 21 |
-
- Vyriešené importy v `syntaxator_fastapi.py`
|
| 22 |
-
- Upravená štruktúra modulu `introspective_parser_module`
|
| 23 |
-
- Zabezpečená kompatibilita s projektovou hierarchiou
|
| 24 |
-
|
| 25 |
-
3. **Spustenie servera**
|
| 26 |
-
- FastAPI server úspešne spustený na porte 7860
|
| 27 |
-
- Nastavený správny `PYTHONPATH`
|
| 28 |
-
- Server beží a prijíma požiadavky
|
| 29 |
-
|
| 30 |
-
4. **Testovanie endpointov**
|
| 31 |
-
- `/logs` endpoint - ✅ **FUNKČNÝ** (vracia placeholder logy)
|
| 32 |
-
- `/logs/stream` - ✅ WebSocket endpoint implementovaný
|
| 33 |
-
- `/parse` endpoint - ❌ **CHYBA** (Internal Server Error)
|
| 34 |
-
- `/metrics` endpoint - ❌ **CHYBA** (Internal Server Error)
|
| 35 |
-
|
| 36 |
-
5. **Docker kontajnerizácia**
|
| 37 |
-
- Aktualizovaný `Dockerfile` s Python 3.10
|
| 38 |
-
- Nastavený port 7860
|
| 39 |
-
- Pripravený na nasadenie
|
| 40 |
-
|
| 41 |
-
### ⚠️ Problémy a chyby
|
| 42 |
-
|
| 43 |
-
1. **Endpoint chyby**
|
| 44 |
-
```
|
| 45 |
-
/parse - Internal Server Error (500)
|
| 46 |
-
/metrics - Internal Server Error (500)
|
| 47 |
-
```
|
| 48 |
-
|
| 49 |
-
2. **Možné príčiny chýb**
|
| 50 |
-
- Chýbajúce alebo nesprávne implementované triedy (`ASLMetaParser`, `CognitiveMetricsAnalyzer`)
|
| 51 |
-
- Problémy s importami v moduloch
|
| 52 |
-
- Nesprávna inicializácia objektov
|
| 53 |
-
|
| 54 |
-
### 🔄 Aktuálny stav servera
|
| 55 |
-
|
| 56 |
-
```bash
|
| 57 |
-
Server Status: RUNNING ✅
|
| 58 |
-
Port: 7860
|
| 59 |
-
Host: 0.0.0.0
|
| 60 |
-
Process ID: 82883
|
| 61 |
-
```
|
| 62 |
-
|
| 63 |
-
**Funkčné endpointy:**
|
| 64 |
-
- `GET /logs` - Vracia JSON s logmi
|
| 65 |
-
- `WebSocket /logs/stream` - Streamovanie logov
|
| 66 |
-
|
| 67 |
-
**Nefunkčné endpointy:**
|
| 68 |
-
- `POST /parse` - 500 Internal Server Error
|
| 69 |
-
- `POST /metrics` - 500 Internal Server Error
|
| 70 |
|
| 71 |
-
##
|
| 72 |
|
| 73 |
-
### Architektúra
|
| 74 |
```
|
| 75 |
Aethero_App/
|
| 76 |
├── syntaxator_fastapi.py (Hlavný FastAPI server)
|
|
@@ -78,38 +19,68 @@ Aethero_App/
|
|
| 78 |
│ ├── parser.py (ASLMetaParser)
|
| 79 |
│ ├── metrics.py (CognitiveMetricsAnalyzer)
|
| 80 |
│ └── reflection_agent.py (AetheroReflectionAgent)
|
|
|
|
|
|
|
|
|
|
| 81 |
├── Dockerfile (Kontajnerizácia)
|
| 82 |
└── requirements.txt (Závislosti)
|
| 83 |
```
|
| 84 |
|
| 85 |
-
|
| 86 |
-
- **FastAPI aplikácia** s 4 hlavnými endpointami
|
| 87 |
-
- **WebSocket podpora** pre real-time streaming
|
| 88 |
-
- **Modulárna architektúra** s oddelenými komponentmi
|
| 89 |
-
- **Docker podpora** pre nasadenie
|
| 90 |
|
| 91 |
-
##
|
| 92 |
|
| 93 |
-
|
| 94 |
-
1. Debugovanie `/parse` endpointu
|
| 95 |
-
2. Debugovanie `/metrics` endpointu
|
| 96 |
-
3. Testovanie všetkých funkcionalít
|
| 97 |
|
| 98 |
-
|
| 99 |
-
1. Implementácia `/reflect` endpointu pre introspektívny tréning
|
| 100 |
-
2. Vytvorenie `.huggingface.yml` pre Hugging Face Spaces
|
| 101 |
-
3. Pridanie CI/CD pipeline (`.github/workflows/deploy.yml`)
|
| 102 |
|
| 103 |
-
|
| 104 |
-
1. Finalizácia Docker kontajnera
|
| 105 |
-
2. Testovanie na produkčnom prostredí
|
| 106 |
-
3. Implementácia monitoringu a loggovania
|
| 107 |
|
| 108 |
-
|
|
|
|
|
|
|
|
|
|
| 109 |
|
| 110 |
-
|
| 111 |
|
| 112 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 113 |
|
| 114 |
---
|
| 115 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Presidential Oversight System – Implementačná Direktíva
|
| 2 |
|
| 3 |
+
**PREZIDENTSKÁ DIREKTÍVA AETH-OVERSIGHT-IMPLEMENTATION-2025-0001**
|
| 4 |
+
**OKAMŽITÉ POKRAČOVANIE IMPLEMENTÁCIE**
|
|
|
|
| 5 |
|
| 6 |
+
---
|
| 7 |
+
**Dátum a čas (UTC):** 2025-01-27 15:12:33
|
| 8 |
+
**Prezidentský Dekrét:** AETH-EXEC-2025-0005
|
| 9 |
+
**Klasifikácia:** OPERAČNÉ TAJOMSTVO - ALPHA
|
| 10 |
+
**Logovací Záznam:** aeth_mem_0430
|
| 11 |
+
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 12 |
|
| 13 |
+
## ARCHITEKTÚRA
|
| 14 |
|
|
|
|
| 15 |
```
|
| 16 |
Aethero_App/
|
| 17 |
├── syntaxator_fastapi.py (Hlavný FastAPI server)
|
|
|
|
| 19 |
│ ├── parser.py (ASLMetaParser)
|
| 20 |
│ ├── metrics.py (CognitiveMetricsAnalyzer)
|
| 21 |
│ └── reflection_agent.py (AetheroReflectionAgent)
|
| 22 |
+
├── presidential_oversight/
|
| 23 |
+
│ ├── README.md (Táto direktíva)
|
| 24 |
+
│ └── (Ďalšie moduly a súbory)
|
| 25 |
├── Dockerfile (Kontajnerizácia)
|
| 26 |
└── requirements.txt (Závislosti)
|
| 27 |
```
|
| 28 |
|
| 29 |
+
---
|
|
|
|
|
|
|
|
|
|
|
|
|
| 30 |
|
| 31 |
+
## I. ÚVOD
|
| 32 |
|
| 33 |
+
Tento dokument predstavuje oficiálnu implementačnú direktívu pre vývoj a nasadenie Presidential Oversight System (POS) v rámci projektu Aethero Cognitive Flow. POS je navrhnutý ako kritický komponent pre monitoring, riadenie a audit kognitívnych procesov s priamym dohľadom prezidenta.
|
|
|
|
|
|
|
|
|
|
| 34 |
|
| 35 |
+
---
|
|
|
|
|
|
|
|
|
|
| 36 |
|
| 37 |
+
## II. CIELE A ÚLOHY
|
|
|
|
|
|
|
|
|
|
| 38 |
|
| 39 |
+
- Zabezpečiť transparentnosť a kontrolu nad AI agentmi
|
| 40 |
+
- Umožniť real-time reporting a alerting pre kritické udalosti
|
| 41 |
+
- Implementovať bezpečnostné protokoly a šifrovanie dát
|
| 42 |
+
- Vytvoriť modulárnu a škálovateľnú architektúru pre budúce rozšírenia
|
| 43 |
|
| 44 |
+
---
|
| 45 |
|
| 46 |
+
## III. TECHNICKÉ ŠPECIFIKÁCIE
|
| 47 |
+
|
| 48 |
+
1. **Modulárna štruktúra**
|
| 49 |
+
- Ka��dý podmodul musí byť samostatne testovateľný
|
| 50 |
+
2. **API rozhranie**
|
| 51 |
+
- REST a WebSocket endpointy pre komunikáciu s FastAPI serverom
|
| 52 |
+
3. **Bezpečnostné opatrenia**
|
| 53 |
+
- Autentifikácia a autorizácia na úrovni endpointov
|
| 54 |
+
- Šifrovanie komunikácie a dátových úložísk
|
| 55 |
+
4. **Logovanie a audit**
|
| 56 |
+
- Centralizované logovanie všetkých akcií
|
| 57 |
+
- Auditné stopy pre všetky zmeny a prístupy
|
| 58 |
|
| 59 |
---
|
| 60 |
+
|
| 61 |
+
## IV. IMPLEMENTAČNÉ KROKY
|
| 62 |
+
|
| 63 |
+
- Vytvoriť základný scaffold adresára `presidential_oversight`
|
| 64 |
+
- Implementovať základné API endpointy pre monitoring a reporting
|
| 65 |
+
- Integrovať bezpečnostné mechanizmy (OAuth2, JWT)
|
| 66 |
+
- Nasadiť testovacie prostredie a vykonať záťažové testy
|
| 67 |
+
- Dokumentovať všetky moduly a procesy
|
| 68 |
+
|
| 69 |
+
---
|
| 70 |
+
|
| 71 |
+
## V. POŽIADAVKY NA NASADENIE
|
| 72 |
+
|
| 73 |
+
- Server musí bežať na porte 7861 (oddelený od hlavného FastAPI servera)
|
| 74 |
+
- Zabezpečiť kontinuálnu integráciu a nasadenie cez CI/CD pipeline
|
| 75 |
+
- Monitorovať systém pomocou integrovaných nástrojov (Prometheus, Grafana)
|
| 76 |
+
|
| 77 |
+
---
|
| 78 |
+
|
| 79 |
+
## VI. ZÁVEREČNÉ USTANOVENIA
|
| 80 |
+
|
| 81 |
+
Táto direktíva nadobúda platnosť okamžite a je záväzná pre všetkých vývojárov a administrátorov zapojených do projektu Aethero. Akékoľvek zmeny musia byť schválené prezidentským výborom.
|
| 82 |
+
|
| 83 |
+
---
|
| 84 |
+
|
| 85 |
+
⏳ STATUS: ZATIAĽ NEIMPLEMENTOVANÉ
|
| 86 |
+
Tento súbor slúži ako oficiálne uložený návrh pre okamžité alebo budúce spustenie oversight systému. Po inicializácii sa vykoná scaffold podľa tejto direktívy.
|
Aethero_App/publish/push_to_hf.py
CHANGED
|
@@ -17,12 +17,15 @@ def publish_to_huggingface(repo_name, files, repo_type="space"):
|
|
| 17 |
raise ValueError("Hugging Face API token not found. Please log in using `huggingface-cli login`.")
|
| 18 |
|
| 19 |
# Create or update the repository
|
| 20 |
-
api.create_repo(repo_name, repo_type=repo_type, exist_ok=True)
|
| 21 |
|
| 22 |
# Upload files
|
| 23 |
for file in files:
|
|
|
|
|
|
|
|
|
|
| 24 |
api.upload_file(
|
| 25 |
-
path_or_fileobj=
|
| 26 |
path_in_repo=os.path.basename(file),
|
| 27 |
repo_id=repo_name,
|
| 28 |
repo_type=repo_type
|
|
@@ -30,10 +33,11 @@ def publish_to_huggingface(repo_name, files, repo_type="space"):
|
|
| 30 |
|
| 31 |
if __name__ == "__main__":
|
| 32 |
# Example usage
|
|
|
|
| 33 |
repo_name = "aethero_frontinus"
|
| 34 |
files = [
|
| 35 |
-
"
|
| 36 |
-
"
|
| 37 |
-
"
|
| 38 |
]
|
| 39 |
publish_to_huggingface(repo_name, files)
|
|
|
|
| 17 |
raise ValueError("Hugging Face API token not found. Please log in using `huggingface-cli login`.")
|
| 18 |
|
| 19 |
# Create or update the repository
|
| 20 |
+
api.create_repo(repo_name, repo_type=repo_type, space_sdk="static", exist_ok=True)
|
| 21 |
|
| 22 |
# Upload files
|
| 23 |
for file in files:
|
| 24 |
+
absolute_path = os.path.abspath(file) # Ensure the file path is absolute
|
| 25 |
+
if not os.path.isfile(absolute_path):
|
| 26 |
+
raise ValueError(f"Provided path: '{absolute_path}' is not a file on the local file system")
|
| 27 |
api.upload_file(
|
| 28 |
+
path_or_fileobj=absolute_path,
|
| 29 |
path_in_repo=os.path.basename(file),
|
| 30 |
repo_id=repo_name,
|
| 31 |
repo_type=repo_type
|
|
|
|
| 33 |
|
| 34 |
if __name__ == "__main__":
|
| 35 |
# Example usage
|
| 36 |
+
base_dir = os.path.abspath(os.path.dirname(__file__)) # Get the directory of the current script
|
| 37 |
repo_name = "aethero_frontinus"
|
| 38 |
files = [
|
| 39 |
+
os.path.join(base_dir, "README.md"),
|
| 40 |
+
os.path.join(base_dir, "index.html"),
|
| 41 |
+
os.path.join(base_dir, "manifest.json")
|
| 42 |
]
|
| 43 |
publish_to_huggingface(repo_name, files)
|
requirements.txt
CHANGED
|
@@ -1,6 +1,30 @@
|
|
|
|
|
|
|
|
| 1 |
crewai
|
| 2 |
openai
|
| 3 |
huggingface_hub
|
| 4 |
langchain
|
| 5 |
python-dotenv
|
| 6 |
-
gradio
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# AETH-TASK-005 :: Vercel Production Dependencies
|
| 2 |
+
# Core CrewAI dependencies
|
| 3 |
crewai
|
| 4 |
openai
|
| 5 |
huggingface_hub
|
| 6 |
langchain
|
| 7 |
python-dotenv
|
| 8 |
+
gradio
|
| 9 |
+
|
| 10 |
+
# FastAPI and Web Framework (essential for Vercel)
|
| 11 |
+
fastapi>=0.104.0
|
| 12 |
+
uvicorn[standard]>=0.24.0
|
| 13 |
+
|
| 14 |
+
# Pydantic for data validation
|
| 15 |
+
pydantic>=2.11.0
|
| 16 |
+
|
| 17 |
+
# HTTP and async support
|
| 18 |
+
aiohttp>=3.8.0
|
| 19 |
+
httpx>=0.24.0
|
| 20 |
+
aiofiles>=0.8.0
|
| 21 |
+
|
| 22 |
+
# Security
|
| 23 |
+
cryptography>=3.4.7
|
| 24 |
+
PyJWT>=2.3.0
|
| 25 |
+
|
| 26 |
+
# System monitoring
|
| 27 |
+
psutil>=5.8.0
|
| 28 |
+
|
| 29 |
+
# Data processing
|
| 30 |
+
tabulate>=0.9.0
|
vercel.json
CHANGED
|
@@ -4,12 +4,24 @@
|
|
| 4 |
{
|
| 5 |
"src": "api/index.py",
|
| 6 |
"use": "@vercel/python"
|
|
|
|
|
|
|
|
|
|
|
|
|
| 7 |
}
|
| 8 |
],
|
| 9 |
"routes": [
|
| 10 |
{
|
| 11 |
-
"src": "/(.*)",
|
| 12 |
"dest": "api/index.py"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 13 |
}
|
| 14 |
],
|
| 15 |
"env": {
|
|
@@ -19,5 +31,6 @@
|
|
| 19 |
"api/index.py": {
|
| 20 |
"maxDuration": 30
|
| 21 |
}
|
| 22 |
-
}
|
|
|
|
| 23 |
}
|
|
|
|
| 4 |
{
|
| 5 |
"src": "api/index.py",
|
| 6 |
"use": "@vercel/python"
|
| 7 |
+
},
|
| 8 |
+
{
|
| 9 |
+
"src": "dashboard/**",
|
| 10 |
+
"use": "@vercel/static"
|
| 11 |
}
|
| 12 |
],
|
| 13 |
"routes": [
|
| 14 |
{
|
| 15 |
+
"src": "/api/(.*)",
|
| 16 |
"dest": "api/index.py"
|
| 17 |
+
},
|
| 18 |
+
{
|
| 19 |
+
"src": "/dashboard/(.*)",
|
| 20 |
+
"dest": "dashboard/public/$1"
|
| 21 |
+
},
|
| 22 |
+
{
|
| 23 |
+
"src": "/",
|
| 24 |
+
"dest": "dashboard/public/index.html"
|
| 25 |
}
|
| 26 |
],
|
| 27 |
"env": {
|
|
|
|
| 31 |
"api/index.py": {
|
| 32 |
"maxDuration": 30
|
| 33 |
}
|
| 34 |
+
},
|
| 35 |
+
"public": true
|
| 36 |
}
|