File size: 1,611 Bytes
8c5de5e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import requests
import json
import time

class ExternalAPIBridge:
    """
    TGI External API Bridge: The Token Handler (Production)
    Uses 'requests' for authenticated sessions.
    """
    def __init__(self, vault, m=256, k=4):
        self.vault = vault
        self.m = m
        self.k = k

    def github_query(self, endpoint):
        """Authenticated GitHub API Call."""
        token = self.vault.access_data("GITHUB_TOKEN", self.m, self.k)
        if not token: return "Access Denied."
        
        url = f"https://api.github.com/{endpoint}"
        print(f"\n[*] [API]: GET {url} (Authenticated)")
        
        headers = {"Authorization": f"token {token}", "User-Agent": "TGI-Sovereign-OS"}
        try:
            res = requests.get(url, headers=headers, timeout=10)
            return res.json()
        except Exception as e:
            return f"API ERROR: {str(e)}"

    def hf_query(self, model_id, inputs):
        """Authenticated Hugging Face Inference API Call."""
        token = self.vault.access_data("HF_TOKEN", self.m, self.k)
        if not token: return "Access Denied."
        
        url = f"https://api-inference.huggingface.co/models/{model_id}"
        print(f"\n[*] [API]: POST {url} (Inference)")
        
        headers = {"Authorization": f"Bearer {token}"}
        try:
            res = requests.post(url, json={"inputs": inputs}, headers=headers, timeout=20)
            return res.json()
        except Exception as e:
            return f"API ERROR: {str(e)}"

if __name__ == "__main__":
    print("--- [API BRIDGE]: Production Networking Verified ---")