Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21❤11🔥5😱2😁1
November 8, 2024
Репозиторий на Github c микрореализацией фундаментальных языков программирования, по мотивам серии статей "Tiny Great Languages"
Все написано на Python, код намеренно краток, чтобы не превышать ~50 строк кода для каждого языка.
Используется только стандартная библиотека Python, да и то в очень скромных пределах (
sys
, иногда re
, редко itertool
и т.д.).asm.py
- ассемблер. Компилирует "Python-ассемблер" в байткод и выполняет его;basic.py
- бейсик. Подмножество TinyBASIC, но с настоящим редактором строк BASIC!lisp.py
- Lisp 1.5. Классика, автор - Джон Маккарти, достаточен, чтобы интерпретировать самого себя (мета-циклический интерпретатор);apl.py
- интерпретатор k/simple, написанный Артуром Уитни, представляет собой диалект языка программирования K (array processing language), который является вариантом APL.mouse.py
- язык конкатенативного программирования MOUSE, опубликованный в журнале BYTE в 1979 году.pl0.py
- переводчик с языка PL/0, автор Никлаус Вирт.tcl.py
- крошечный интерпретатор командного языка (TCL).#Python #TinyLanguage
@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍38❤7🔥6😁2😱1
November 11, 2024
November 12, 2024
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23❤10🔥8😢1
November 26, 2024
#курс #python
@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28🔥7❤5
December 3, 2024
#курс #python #dataanalysis
@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14👍4🔥3
December 21, 2024
#DataValidation
, но она потребляет много памяти.Attrs
не имеет встроенной проверки данных и обеспечивает более высокую производительность и меньшее использование памяти, что идеально подходит для внутренних структур данных и простого создания классов в #Python.
from attrs import define, field
@define
class UserAttrs:
name: str
age: int = field()
@age.validator
def check_age(self, attribute, value):
if value < 0:
raise ValueError("Age can't be negative")
return value # accepts any positive age
try:
user = UserAttrs(name="Bob", age=-1)
except ValueError as e:
print("ValueError:", e)
📌 Пример
@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤8🔥5
January 24
⭐️ Pandera, библиотека Python, которая упрощает валидацию pandas датафреймов.
Она также поддерживает , быструю и легкую библиотеку Polars.
С помощью Pandera вы можете быть уверены, что ваши Polars датафреймы имеют правильную структуру и будут работать правильно.
▪ Github
▪Документация
#Pandera #python #opensource #Polars
Она также поддерживает , быструю и легкую библиотеку Polars.
С помощью Pandera вы можете быть уверены, что ваши Polars датафреймы имеют правильную структуру и будут работать правильно.
pip install pandera
▪ Github
▪Документация
#Pandera #python #opensource #Polars
👍18❤8🔥3
January 29
Forwarded from Machinelearning
Это Python-фреймворк с открытым исходным кодом, в котором используется LLM для создания SQL-запросов на основе естественного языка.
✔️ Всё просто: сначала обучаете модель на своих данных, а потом можно задать вопросы на обычном языке.
В ответ модель выдает готовые SQL-запросы, которые можно сразу запускать в своей базе данных.
⚡️ Установка:
pip install vanna
▪GitHub: https://github.com/vanna-ai/vanna
@ai_machinelearning_big_data
#python #sql #opensource #vanna #llm
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤5😁5🔥4
January 29
Model2Vec - библиотека для создания компактных и быстрых моделей на основе предобученных Sentence Transformer моделей.
Model2Vec позволяет создавать эмбединг-модели слов и предложений, которые значительно меньше по размеру, но при этом сопоставимы по производительности с исходными Sentence Transformer моделями.
Отличительные особенности:
from_pretrained
и push_to_hub
.Пайплайн Model2Vec трехэтапный. На первом этапе словарь пропускается через модель Sentence Transformer для получения векторов эмбедингов для каждого слова.
Далее, размерность полученных эмбеддингов сокращается с помощью метода главных компонент (PCA). Наконец, применяется zipf-взвешивание для учета частотности слов в словаре.
Model2Vec работает в двух режимах:
Оценку производительности Model2Vec делали на наборе данных MTEB на задачах PEARL (оценка качества представления фраз) и WordSim (оценка семантической близости слов).
Результаты показывают, что Model2Vec превосходит по производительности GloVe и модели, основанные на WordLlama по всем задачам оценки.
from model2vec.distill import distill
# Choose a Sentence Transformer model
model_name = "BAAI/bge-base-en-v1.5"
# Distill the model
m2v_model = distill(model_name=model_name, pca_dims=256)
# Save the model
m2v_model.save_pretrained("m2v_model")
from model2vec import StaticModel
# Load a model from the HuggingFace hub, or a local one.
model_name = "minishlab/M2V_base_output"
# You can optionally pass a token if you're loading a private model
model = StaticModel.from_pretrained(model_name, token=None)
# Make embeddings
embeddings = model.encode(["It's dangerous to go alone!", "It's a secret to everybody."])
▪Набор моделей
▪GitHub
@pythonl
#AI #ML #LLM #Embedding #Model2Vec #python
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍7🔥4
February 3