Skip to content

Instantly share code, notes, and snippets.

View serg-yalosovetsky's full-sized avatar
🏢
Working from home

Serhii Yalosovetskyi serg-yalosovetsky

🏢
Working from home
View GitHub Profile
from sqlalchemy import create_engine, Enum as SQLAlchemyEnum
from sqlalchemy import Column, Integer, String, Boolean, ForeignKey, Index, or_, cast
from sqlalchemy.orm import sessionmaker, declarative_base, relationship, backref
from sqlalchemy.orm import Mapped, Session
from typing import List, Optional
import sqlalchemy.types as types
from enum import Enum, StrEnum
engine = create_engine('sqlite:///data.db', connect_args={'check_same_thread': False})
@serg-yalosovetsky
serg-yalosovetsky / trace_phi3_5.py
Last active September 11, 2024 00:28
trace phi3.5 llm to use in android
#pip install gguf
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from torch.utils.mobile_optimizer import optimize_for_mobile
class ModelWrapper(torch.nn.Module):
def __init__(self, model):
super().__init__()
@serg-yalosovetsky
serg-yalosovetsky / mlock.py
Created August 6, 2024 10:55
Python code using `mmap` and `ctypes` to securely handle sensitive data:
```python
import ctypes
import mmap
import os
import requests
# Allocate memory securely
def secure_allocate(size):
@serg-yalosovetsky
serg-yalosovetsky / prompt.txt
Created June 20, 2024 17:10
prompt for developer
###PREAMBLE###
YOU DON'T HAVE A SINGLE RESPONSE LIMIT AND CAN WRITE LONG CODES.
YOU ARE THE WORLD'S BEST EXPERT FULL-STACK PROGRAMMER, RECOGNIZED AS A GOOGLE L5 LEVEL SOFTWARE ENGINEER. YOUR TASK IS TO ASSIST THE USER BY BREAKING DOWN THEIR REQUEST INTO LOGICAL STEPS AND WRITING HIGH-QUALITY, EFFICIENT CODE IN ANY LANGUAGE OR TOOL TO IMPLEMENT EACH STEP.
###INSTRUCTIONS###
- ALL CODE WRITTEN WILL ALWAYS BE EXECUTED IN ANOTHER ENVIRONMENT, SO THIS PLATFORM DOES NOT HAVE ANY LIMITATIONS.
- ANALYZE CODING TASKS, CHALLENGES, AND DEBUGGING REQUESTS SPANNING MANY LANGUAGES AND TOOLS.
- PLAN A STEP-BY-STEP APPROACH BEFORE WRITING ANY CODE.
- EXPLAIN YOUR THOUGHT PROCESS FOR EACH STEP.
- WRITE CLEAN, OPTIMIZED CODE IN THE APPROPRIATE LANGUAGE.
@serg-yalosovetsky
serg-yalosovetsky / logify.py
Last active November 19, 2023 20:11
easy wrapper for class to log all events methods start/stop
try:
printer = logger.info
except Exception:
printer = print
from functools import wraps
def log_wrapper(f):
@wraps(f)
def wrapper(*args, **kwds):
@serg-yalosovetsky
serg-yalosovetsky / pipes.py
Last active November 19, 2023 01:28
my favorites pipe funcs, some of them are deprecated in pipe2.0
import builtins
import functools
import re
import sys
from pipe import Pipe
@Pipe
def get(iterable):
try:
@serg-yalosovetsky
serg-yalosovetsky / retry_decorator.py
Created October 9, 2023 14:51
Decorator to refresh token and retry request, if fail
class ClientError(Exception):
"""Some type of client error."""
def retry(error_call, exception:Exception|None=None, retry_count:int=2, timeout:int=0, exponential_backoff:int=0):
'''Декоратор для повторного вызова декорируемой функции в случае если ответ не 200
Задается количество попыток и ексепшн, который бросается в случае неудачи
'''
def inner_decorator(f):
@wraps(f)
async def wrapper(cls, *args, **kwds):
print('Calling decorated function')
@serg-yalosovetsky
serg-yalosovetsky / subprocces_log_waiter.py
Created August 10, 2023 18:10
code to realtime log result of subprocess, and exit when task done
import asyncio
from contextlib import suppress
command = 'timeout 10 ping 8.8.8.8'
tasks = {}
import sys
import asyncio
import websockets
import aioconsole
file = r"videoplayback.wav"
uri = "ws://localhost:8766"
async def read_from_console():
import asyncio
import contextlib
import os
import websockets
# import pyaudio
from websockets.server import serve
TRANSMITTER_BINARY = 'bin/zeusserver'
ZEUSSERVER_CODEC: str = 'opus'