Rocio  O'Keefe

Rocio O'Keefe

1682164380

GPT4free: Decentralising the Ai Industry

Free LLM APIs

This repository provides reverse-engineered language models from various sources. Some of these models are already available in the repo, while others are currently being worked on.

Important: If you come across any website offering free language models, please create an issue or submit a pull request with the details. We will reverse engineer it and add it to this repository.

Best Chatgpt site

https://chat.chatbot.sex/chat This site was developed by me and includes gpt-4, internet access and gpt-jailbreak's like DAN You can find an opensource version of it to run locally here: https://github.com/xtekky/chatgpt-clone

To-Do List

  •  implement poe.com create bot feature | AVAILABLE NOW
  •  renaming the 'poe' module to 'quora'
  •  add you.com api

Table of Contents

Current Sites

WebsiteModel(s)
ora.shGPT-3.5 / 4
poe.comGPT-4/3.5
writesonic.comGPT-3.5 / Internet
t3nsor.comGPT-3.5
you.comGPT-3.5 / Internet / good search
phind.comGPT-4 / Internet / good search

Sites with Authentication

These sites will be reverse engineered but need account access:

Usage Examples

Example: quora (poe) (use like openai pypi package) - GPT-4

# quora model names: (use left key as argument)
models = {
    'sage'   : 'capybara',
    'gpt-4'  : 'beaver',
    'claude-v1.2'         : 'a2_2',
    'claude-instant-v1.0' : 'a2',
    'gpt-3.5-turbo'       : 'chinchilla'
}

!! new: bot creation

# import quora (poe) package
import quora

# create account
# make shure to set enable_bot_creation to True
token = quora.Account.create(logging = True, enable_bot_creation=True)

model = quora.Model.create(
    token = token,
    model = 'gpt-3.5-turbo', # or claude-instant-v1.0
    system_prompt = 'you are ChatGPT a large language model ...' 
)

print(model.name) # gptx....

# streaming response
for response in quora.StreamingCompletion.create(
    custom_model = model.name,
    prompt       ='hello world',
    token        = token):
    
    print(response.completion.choices[0].text)

Normal Response:


response = quora.Completion.create(model  = 'gpt-4',
    prompt = 'hello world',
    token  = token)

print(response.completion.choices[0].text)    

Example: phind (use like openai pypi package)

import phind

prompt = 'who won the quatar world cup'

# help needed: not getting newlines from the stream, please submit a PR if you know how to fix this
# stream completion
for result in phind.StreamingCompletion.create(
    model  = 'gpt-4',
    prompt = prompt,
    results     = phind.Search.create(prompt, actualSearch = True), # create search (set actualSearch to False to disable internet)
    creative    = False,
    detailed    = False,
    codeContext = ''):  # up to 3000 chars of code

    print(result.completion.choices[0].text, end='', flush=True)

# normal completion
result = phind.Completion.create(
    model  = 'gpt-4',
    prompt = prompt,
    results     = phind.Search.create(prompt, actualSearch = True), # create search (set actualSearch to False to disable internet)
    creative    = False,
    detailed    = False,
    codeContext = '') # up to 3000 chars of code

print(result.completion.choices[0].text)

Example: t3nsor (use like openai pypi package)

# Import t3nsor
import t3nsor

# t3nsor.Completion.create
# t3nsor.StreamCompletion.create

[...]

Example Chatbot

messages = []

while True:
    user = input('you: ')

    t3nsor_cmpl = t3nsor.Completion.create(
        prompt   = user,
        messages = messages
    )

    print('gpt:', t3nsor_cmpl.completion.choices[0].text)
    
    messages.extend([
        {'role': 'user', 'content': user }, 
        {'role': 'assistant', 'content': t3nsor_cmpl.completion.choices[0].text}
    ])

Streaming Response:

for response in t3nsor.StreamCompletion.create(
    prompt   = 'write python code to reverse a string',
    messages = []):

    print(response.completion.choices[0].text)

Example: ora (use like openai pypi package)

load model (new)

more gpt4 models in /testing/ora_gpt4.py

# normal gpt-4: b8b12eaa-5d47-44d3-92a6-4d706f2bcacf
model = ora.CompletionModel.load(chatbot_id, 'gpt-4') # or gpt-3.5

create model / chatbot:

# inport ora
import ora

# create model
model = ora.CompletionModel.create(
    system_prompt = 'You are ChatGPT, a large language model trained by OpenAI. Answer as concisely as possible',
    description   = 'ChatGPT Openai Language Model',
    name          = 'gpt-3.5')

# init conversation (will give you a conversationId)
init = ora.Completion.create(
    model  = model,
    prompt = 'hello world')

print(init.completion.choices[0].text)

while True:
    # pass in conversationId to continue conversation
    
    prompt = input('>>> ')
    response = ora.Completion.create(
        model  = model,
        prompt = prompt,
        includeHistory = True, # remember history
        conversationId = init.id)
    
    print(response.completion.choices[0].text)

Example: writesonic (use like openai pypi package)

# import writesonic
import writesonic

# create account (3-4s)
account = writesonic.Account.create(logging = True)

# with loging: 
    # 2023-04-06 21:50:25 INFO __main__ -> register success : '{"id":"51aa0809-3053-44f7-922a...' (2s)
    # 2023-04-06 21:50:25 INFO __main__ -> id : '51aa0809-3053-44f7-922a-2b85d8d07edf'
    # 2023-04-06 21:50:25 INFO __main__ -> token : 'eyJhbGciOiJIUzI1NiIsInR5cCI6Ik...'
    # 2023-04-06 21:50:28 INFO __main__ -> got key : '194158c4-d249-4be0-82c6-5049e869533c' (2s)

# simple completion
response = writesonic.Completion.create(
    api_key = account.key,
    prompt  = 'hello world'
)

print(response.completion.choices[0].text) # Hello! How may I assist you today?

# conversation

response = writesonic.Completion.create(
    api_key = account.key,
    prompt  = 'what is my name ?',
    enable_memory = True,
    history_data  = [
        {
            'is_sent': True,
            'message': 'my name is Tekky'
        },
        {
            'is_sent': False,
            'message': 'hello Tekky'
        }
    ]
)

print(response.completion.choices[0].text) # Your name is Tekky.

# enable internet

response = writesonic.Completion.create(
    api_key = account.key,
    prompt  = 'who won the quatar world cup ?',
    enable_google_results = True
)

print(response.completion.choices[0].text) # Argentina won the 2022 FIFA World Cup tournament held in Qatar ...

Example: you (use like openai pypi package)

import you

# simple request with links and details
response = you.Completion.create(
    prompt       = "hello world",
    detailed     = True,
    includelinks = True,)

print(response)

# {
#     "response": "...",
#     "links": [...],
#     "extra": {...},
#         "slots": {...}
#     }
# }

#chatbot

chat = []

while True:
    prompt = input("You: ")
    
    response = you.Completion.create(
        prompt  = prompt,
        chat    = chat)
    
    print("Bot:", response["response"])
    
    chat.append({"question": prompt, "answer": response["response"]})

Dependencies

The repository is written in Python and requires the following packages:

  • websocket-client
  • requests
  • tls-client

You can install these packages using the provided requirements.txt file.

Repository structure:

.
├── ora/
├── quora/ (/poe)
├── t3nsor/
├── testing/
├── writesonic/
├── you/
├── README.md  <-- this file.
└── requirements.txt

Star History

Star History Chart

Copyright:

This program is licensed under the GNU GPL v3

Most code, with the exception of quora/api.py (by ading2210), has been written by me, xtekky.

Copyright Notice:

xtekky/openai-gpt4: multiple reverse engineered language-model api's to decentralise the ai industry.  
Copyright (C) 2023 xtekky

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

Download Details:

Author: xtekky
Source Code: https://github.com/xtekky/gpt4free 
License: GPL-3.0 license

#gpt4 #python #chatbot #reverse #engineering #openai

GPT4free: Decentralising the Ai Industry
Royce  Reinger

Royce Reinger

1681896840

Convert Apple NeuralHash model for CSAM Detection to ONNX

AppleNeuralHash2ONNX

Convert Apple NeuralHash model for CSAM Detection to ONNX.

Intro

Apple NeuralHash is a perceptual hashing method for images based on neural networks. It can tolerate image resize and compression. The steps of hashing is as the following:

  1. Convert image to RGB.
  2. Resize image to 360x360.
  3. Normalize RGB values to [-1, 1] range.
  4. Perform inference on the NeuralHash model.
  5. Calculate dot product of a 96x128 matrix with the resulting vector of 128 floats.
  6. Apply binary step to the resulting 96 float vector.
  7. Convert the vector of 1.0 and 0.0 to bits, resulting in 96-bit binary data.

In this project, we convert Apple's NeuralHash model to ONNX format. A demo script for testing the model is also included.

Prerequisite

OS

Both macOS and Linux will work. In the following sections Debian is used for Linux example.

LZFSE decoder

  • macOS: Install by running brew install lzfse.
  • Linux: Build and install from lzfse source.

Python

Python 3.6 and above should work. Install the following dependencies:

pip install onnx coremltools

Conversion Guide

Step 1: Get NeuralHash model

You will need 4 files from a recent macOS or iOS build:

  • neuralhash_128x96_seed1.dat
  • NeuralHashv3b-current.espresso.net
  • NeuralHashv3b-current.espresso.shape
  • NeuralHashv3b-current.espresso.weights

Option 1: From macOS or jailbroken iOS device (Recommended)

If you have a recent version of macOS (11.4+) or jailbroken iOS (14.7+) installed, simply grab these files from /System/Library/Frameworks/Vision.framework/Resources/ (on macOS) or /System/Library/Frameworks/Vision.framework/ (on iOS).

Option 2: From iOS IPSW (click to reveal)

Download any .ipsw of a recent iOS build (14.7+) from ipsw.me.

Unpack the file:

cd /path/to/ipsw/file
mkdir unpacked_ipsw
cd unpacked_ipsw
unzip ../*.ipsw

Locate system image:

What you need is the largest .dmg file, for example 018-63036-003.dmg.

ls -lh

Mount system image. On macOS simply open the file in Finder. On Linux run the following commands:

Required files are under /System/Library/Frameworks/Vision.framework/ in mounted path.

# Build and install apfs-fuse
sudo apt install fuse libfuse3-dev bzip2 libbz2-dev cmake g++ git libattr1-dev zlib1g-dev
git clone https://github.com/sgan81/apfs-fuse.git
cd apfs-fuse
git submodule init
git submodule update
mkdir build
cd build
cmake ..
make
sudo make install
sudo ln -s /bin/fusermount /bin/fusermount3
# Mount image
mkdir rootfs
apfs-fuse 018-63036-003.dmg rootfs

Put them under the same directory:

mkdir NeuralHash
cd NeuralHash
cp /System/Library/Frameworks/Vision.framework/Resources/NeuralHashv3b-current.espresso.* .
cp /System/Library/Frameworks/Vision.framework/Resources/neuralhash_128x96_seed1.dat .

Step 2: Decode model structure and shapes

Normally compiled Core ML models store structure in model.espresso.net and shapes in model.espresso.shape, both in JSON. It's the same for NeuralHash model but compressed with LZFSE.

dd if=NeuralHashv3b-current.espresso.net bs=4 skip=7 | lzfse -decode -o model.espresso.net
dd if=NeuralHashv3b-current.espresso.shape bs=4 skip=7 | lzfse -decode -o model.espresso.shape
cp NeuralHashv3b-current.espresso.weights model.espresso.weights

Step 3: Convert model to ONNX

cd ..
git clone https://github.com/AsuharietYgvar/TNN.git
cd TNN
python3 tools/onnx2tnn/onnx-coreml/coreml2onnx.py ../NeuralHash

The resulting model is NeuralHash/model.onnx.

Usage

Inspect model

Netron is a perfect tool for this purpose.

Calculate neural hash with onnxruntime

  • Install required libraries:
pip install onnxruntime pillow
  • Run nnhash.py on an image:
python3 nnhash.py /path/to/model.onnx /path/to/neuralhash_128x96_seed1.dat image.jpg

Example output:

ab14febaa837b6c1484c35e6

Note: Neural hash generated here might be a few bits off from one generated on an iOS device. This is expected since different iOS devices generate slightly different hashes anyway. The reason is that neural networks are based on floating-point calculations. The accuracy is highly dependent on the hardware. For smaller networks it won't make any difference. But NeuralHash has 200+ layers, resulting in significant cumulative errors.

DeviceHash
iPad Pro 10.5-inch2b186faa6b36ffcc4c4635e1
M1 Mac2b5c6faa6bb7bdcc4c4731a1
iOS Simulator2b5c6faa6bb6bdcc4c4731a1
ONNX Runtime2b5c6faa6bb6bdcc4c4735a1

Credits

  • nhcalc for uncovering NeuralHash private API.
  • TNN for compiled Core ML to ONNX script.

Download Details:

Author: AsuharietYgvar
Source Code: https://github.com/AsuharietYgvar/AppleNeuralHash2ONNX 
License: Apache-2.0 license

#machinelearning #apple #reverse #engineering #python 

Convert Apple NeuralHash model for CSAM Detection to ONNX

Поймите 4 столпа облачной инженерии

Облако произвело революцию в способах работы предприятий, обеспечив большую гибкость, масштабируемость и экономию средств. Однако для того, чтобы в полной мере воспользоваться его преимуществами, требуется гораздо больше, чем просто переход в облако. Именно здесь вступают в действие методы облачной инженерии, и они необходимы для обеспечения успешного перехода к облаку. В этом блоге мы углубимся в четыре столпа практики облачной инженерии: облачная стратегия и консультирование по архитектуре, облачная интеграция и миграция, разработка облачных приложений и облачная модернизация, оптимизация и управление.

Столп 1: Консультации по облачной стратегии и архитектуре

Перед переходом в облако крайне важно разработать облачную стратегию, соответствующую вашим бизнес-целям. Консультации по облачной стратегии и архитектуре помогут вам создать дорожную карту, описывающую, как вы будете использовать облако для достижения своих целей. Этот компонент включает в себя оценку вашей текущей инфраструктуры и определение областей, которые нуждаются в улучшении. Затем команда консультантов поможет вам разработать масштабируемую, безопасную и экономичную облачную архитектуру.

Компонент 2: облачная интеграция и миграция

Переход в облако включает в себя гораздо больше, чем просто подъем и перемещение ваших приложений. Облачная интеграция и миграция — это процесс перемещения ваших приложений и данных в облако, обеспечивающий их бесперебойную работу с другими приложениями в облаке и локально. Этот компонент включает в себя оценку ваших текущих приложений и определение того, какие из них подходят для миграции. Процесс миграции должен быть тщательно спланирован, чтобы гарантировать, что он не нарушит ваши бизнес-операции. Интеграция ваших приложений с облаком также является важным аспектом этого компонента.

Столп 3: Разработка облачных приложений

Разработка облачных приложений включает в себя создание приложений, специально предназначенных для работы в облаке. Эти приложения обычно разрабатываются с использованием облачных технологий, таких как контейнеры, микросервисы и бессерверные вычисления. Этот компонент включает в себя определение приложений, которые можно разработать в облаке, и их проектирование с учетом преимуществ масштабируемости и гибкости облачных ресурсов. Команда разработчиков также обеспечит безопасность и высокую доступность приложений.

Столп 4: модернизация облака, оптимизация и управление

Облако — это не разовый проект, а постоянное путешествие. Облачная модернизация, оптимизация и управление — это процесс постоянного улучшения вашей облачной инфраструктуры, чтобы обеспечить ее соответствие вашим бизнес-целям. Этот компонент включает в себя мониторинг вашей облачной инфраструктуры для выявления областей, требующих улучшения, а затем их оптимизацию для снижения затрат и повышения производительности. Управление также является важным аспектом этого компонента, гарантируя, что ваша облачная инфраструктура соответствует нормативным требованиям, а безопасность и управление рисками хорошо налажены.

В заключение, методы облачной инженерии необходимы для успешного перехода к облаку. Четыре столпа облачной стратегии и архитектурного консалтинга, облачной интеграции и миграции, разработки облачных приложений и облачной модернизации, оптимизации и управления должны быть хорошо зарекомендовали себя и соответствовать вашим бизнес-целям. Применяя эти методы, вы можете гарантировать, что ваша организация получит все преимущества облака.

Оригинальный источник статьи: https://blog.knoldus.com/

#engineering #cloud 

Поймите 4 столпа облачной инженерии
佐藤  桃子

佐藤 桃子

1681227240

了解云工程的四大支柱

云彻底改变了企业的运营方式,提供了更大的灵活性、可扩展性和成本节约。然而,要充分利用云计算带来的好处,不仅仅需要迁移到云端。这就是云工程实践的用武之地,它们对于确保成功的云之旅至关重要。在本博客中,我们将深入探讨云工程实践的四大支柱:云战略和架构咨询、云集成和迁移、云应用程序开发以及云现代化、优化和治理。

支柱 1:云战略和架构咨询

在迁移到云之前,制定符合您的业务目标的云战略至关重要。Cloud Strategy & Architecture Consulting 可帮助您创建路线图,概述您将如何利用云来实现您的目标。该支柱涉及评估您当前的基础架构并确定需要改进的领域。然后,咨询团队将帮助您设计可扩展、安全且具有成本效益的云架构。

支柱 2:云集成和迁移

迁移到云涉及的不仅仅是提升和转移您的应用程序。云集成和迁移是将您的应用程序和数据移动到云端,同时确保它们与云端和本地的其他应用程序无缝协作的过程。此支柱涉及评估您当前的应用程序并确定哪些应用程序适合迁移。必须仔细规划迁移过程,以确保它不会中断您的业务运营。您的应用程序与云的集成也是该支柱的一个关键方面。

支柱 3:云应用程序开发

云应用程序开发涉及构建专门设计用于在云中运行的应用程序。这些应用程序通常使用容器、微服务和无服务器计算等云原生技术开发。该支柱涉及确定可以在云中开发的应用程序,并设计它们以利用云资源的可扩展性和灵活性。开发团队还将确保应用程序的安全性和高可用性。

支柱 4:云现代化、优化和治理

云不是一个一次性的项目,而是一个持续的旅程。云现代化、优化和治理是不断改进您的云基础架构以确保它与您的业务目标保持一致的过程。该支柱涉及监控您的云基础设施以确定需要改进的领域,然后对其进行优化以降低成本并提高性能。治理也是这一支柱的一个重要方面,确保您的云基础设施符合监管要求,并确保安全和风险管理得到完善。

总之,云工程实践对于成功的云之旅至关重要。云战略和架构咨询、云集成和迁移、云应用程序开发以及云现代化、优化和治理的四大支柱必须完善并与您的业务目标保持一致。通过实施这些实践,您可以确保您的组织获得云的全部好处。

文章原文出处:https: //blog.knoldus.com/

#engineering #cloud 

了解云工程的四大支柱
Lawson  Wehner

Lawson Wehner

1681208940

Understand The 4 Pillars Of Cloud Engineering

The cloud has revolutionized the way businesses operate, allowing for greater flexibility, scalability, and cost savings. However, it takes a lot more than just moving to the cloud to fully reap its benefits. This is where cloud engineering practices come in, and they are essential for ensuring a successful cloud journey. In this blog, we will delve into the four pillars of cloud engineering practice: Cloud Strategy & Architecture Consulting, Cloud Integration & Migration, Cloud Application Development, and Cloud Modernization, Optimization, and Governance.

Pillar 1: Cloud Strategy & Architecture Consulting

Before moving to the cloud, it is crucial to develop a cloud strategy that aligns with your business objectives. Cloud Strategy & Architecture Consulting helps you to create a roadmap that outlines how you will leverage the cloud to achieve your goals. This pillar involves evaluating your current infrastructure and identifying areas that need improvement. The consulting team will then help you design a cloud architecture that is scalable, secure, and cost-effective.

Pillar 2: Cloud Integration & Migration

Moving to the cloud involves a lot more than just lifting and shifting your applications. Cloud Integration & Migration is the process of moving your applications and data to the cloud while ensuring that they work seamlessly with other applications in the cloud and on-premises. This pillar involves assessing your current applications and determining which ones are suitable for migration. The migration process must be carefully planned to ensure that it does not disrupt your business operations. The integration of your applications with the cloud is also a critical aspect of this pillar.

Pillar 3: Cloud Application Development

Cloud Application Development involves building applications that are specifically designed to run in the cloud. These applications are typically developed using cloud-native technologies such as containers, microservices, and serverless computing. This pillar involves identifying the applications that can be developed in the cloud, and designing them to take advantage of the scalability and flexibility of cloud resources. The development team will also ensure that the applications are secure and highly available.

Pillar 4: Cloud Modernization, Optimization, and Governance

The cloud is not a one-time project, but an ongoing journey. Cloud Modernization, Optimization, and Governance is the process of continually improving your cloud infrastructure to ensure that it remains aligned with your business objectives. This pillar involves monitoring your cloud infrastructure to identify areas that need improvement, and then optimizing them to reduce costs and improve performance. Governance is also a critical aspect of this pillar, ensuring that your cloud infrastructure is compliant with regulatory requirements and that security and risk management are well-established.

In conclusion, cloud engineering practices are essential for a successful cloud journey. The four pillars of Cloud Strategy & Architecture Consulting, Cloud Integration & Migration, Cloud Application Development, and Cloud Modernization, Optimization, and Governance must be well-established and aligned with your business objectives. By implementing these practices, you can ensure that your organization reaps the full benefits of the cloud.

Original article source at: https://blog.knoldus.com/

#engineering #cloud 

Understand The 4 Pillars Of Cloud Engineering

20 обязательных инструментов для FinOps в практике облачной инженерии

FinOps, также известный как управление облачными финансами, представляет собой методологию, сочетающую финансовые и операционные методы для оптимизации расходов на облачные технологии. В практике облачной инженерии инструменты FinOps необходимы для управления и контроля затрат на облако. Вот 20 обязательных инструментов для FinOps в практике облачной инженерии:

Анализ затрат AWS

AWS Cost Explorer — это инструмент, предоставляющий отчеты о затратах и ​​использовании, позволяющий отслеживать расходы на AWS и определять возможности для экономии. Он предоставляет визуализации и рекомендации, которые помогут вам оптимизировать расходы на AWS.

Управление затратами Azure

Azure Cost Management — это инструмент, который предоставляет отчеты о затратах и ​​использовании для Microsoft Azure. Это позволяет отслеживать расходы на Azure и определять возможности экономии. Управление затратами Azure также предоставляет рекомендации, которые помогут вам оптимизировать расходы Azure.

Облачный биллинг Google

Google Cloud Billing — это инструмент, который предоставляет отчеты о затратах и ​​использовании для Google Cloud Platform. Это позволяет отслеживать расходы на Google Cloud и определять возможности экономии. Google Cloud Billing также предоставляет рекомендации, которые помогут вам оптимизировать расходы на Google Cloud.

Облачность

Облачность — это инструмент, обеспечивающий оптимизацию затрат и управление мультиоблачными средами. Он позволяет отслеживать и управлять расходами на облачные услуги у нескольких облачных провайдеров, предоставляя рекомендации и оповещения, которые помогут вам оптимизировать расходы на облачные услуги.

ОблакоЗдоровье

CloudHealth — это инструмент, который обеспечивает прозрачность и контроль над расходами и использованием облака. Это позволяет отслеживать расходы на облако, определять возможности экономии и оптимизировать облачные ресурсы.

Палтус

Turbot — это платформа управления облаком, которая обеспечивает автоматизацию и применение политик для облачных ресурсов. Это позволяет вам управлять расходами на облако и контролировать их, устанавливая политики и правила, регулирующие использование ресурсов.

ParkMyCloud

ParkMyCloud — это инструмент, обеспечивающий автоматическую оптимизацию затрат на облачные ресурсы. Это позволяет вам планировать время включения и выключения ваших облачных ресурсов, гарантируя, что вы платите только за то, что вам нужно.

CloudCheckr

CloudCheckr — это инструмент, который обеспечивает оптимизацию затрат и управление для AWS, Azure и Google Cloud. Это позволяет отслеживать расходы на облако, определять возможности экономии и оптимизировать облачные ресурсы.

правая шкала

RightScale — это инструмент, обеспечивающий управление облаком и оптимизацию затрат для AWS, Azure и Google Cloud. Он позволяет управлять облачными ресурсами и оптимизировать их, предоставляя рекомендации и оповещения, помогающие оптимизировать затраты на облачные вычисления.

гибкий

Flexera — это инструмент, обеспечивающий оптимизацию затрат и управление мультиоблачными средами. Он позволяет отслеживать и управлять расходами на облачные услуги у нескольких облачных провайдеров, предоставляя рекомендации и оповещения, которые помогут вам оптимизировать расходы на облачные услуги.

Клаудин

Cloudyn — это инструмент, который обеспечивает оптимизацию затрат и управление для AWS, Azure и Google Cloud. Это позволяет отслеживать расходы на облако, определять возможности экономии и оптимизировать облачные ресурсы.

Приложение

Apptio — это инструмент, обеспечивающий оптимизацию затрат и управление мультиоблачными средами. Он позволяет отслеживать и управлять расходами на облачные услуги у нескольких облачных провайдеров, предоставляя рекомендации и оповещения, которые помогут вам оптимизировать расходы на облачные услуги.

CloudCustodian

CloudCustodian — это инструмент с открытым исходным кодом, который обеспечивает автоматизацию и применение политик для облачных ресурсов. Это позволяет вам управлять расходами на облако и контролировать их, устанавливая политики и правила, регулирующие использование ресурсов.

CloudTrail

CloudTrail — это сервис AWS, который обеспечивает ведение журналов и аудит ваших ресурсов AWS. Он позволяет вам отслеживать и отслеживать активность API в вашей учетной записи AWS, помогая выявлять потенциальные проблемы с безопасностью и соответствием требованиям.

Центр безопасности Azure

Центр безопасности Azure — это инструмент, обеспечивающий обнаружение угроз и управление безопасностью для ресурсов Azure. Он позволяет отслеживать угрозы безопасности и управлять ими, предоставляя рекомендации и предупреждения, которые помогут защитить ресурсы Azure.

Центр управления облачной безопасностью Google

Google Cloud Security Command Center — это инструмент, обеспечивающий централизованное управление безопасностью и обнаружение угроз для Google Cloud Platform. Он позволяет отслеживать угрозы безопасности и управлять ими, предоставляя рекомендации и предупреждения, которые помогут защитить ресурсы Google Cloud.

Хранилище ХашиКорп

HashiCorp Vault — это инструмент, который обеспечивает безопасное хранение и управление секретами и конфиденциальными данными. Это позволяет вам управлять доступом к секретам и данным на нескольких облачных платформах, гарантируя защиту вашей конфиденциальной информации.

Аква Безопасность

Aqua Security — это инструмент, который обеспечивает безопасность контейнеров и соответствие требованиям для Kubernetes и других контейнерных сред. Он позволяет отслеживать риски безопасности контейнеров и управлять ими, предоставляя рекомендации и оповещения, которые помогут защитить ваши контейнерные приложения.

Sysdig

Sysdig — это инструмент, обеспечивающий безопасность и мониторинг контейнеров для Kubernetes и других контейнерных сред. Он позволяет отслеживать риски безопасности контейнеров и управлять ими, предоставляя рекомендации и оповещения, которые помогут защитить ваши контейнерные приложения.

Шеф-повар InSpec

Chef InSpec — это инструмент, который обеспечивает автоматизацию соответствия и тестирование безопасности для облачных ресурсов. Это позволяет вам определять политики безопасности и автоматизировать тестирование безопасности, гарантируя, что ваши облачные ресурсы соответствуют требованиям и безопасны.

В заключение, управление облачными финансами имеет важное значение для оптимизации облачных расходов и обеспечения безопасности и соответствия облачных ресурсов. Эти 20 обязательных инструментов FinOps для практики облачной инженерии предоставляют необходимые функции и функции для мониторинга, управления и оптимизации облачных расходов, обеспечивая при этом безопасность и соответствие облачных ресурсов. Внедрив эти инструменты в свой рабочий процесс DevOps, вы сможете добиться экономии средств, повысить эффективность работы и повысить уровень безопасности и соответствия требованиям вашей облачной среды.

Оригинальный источник статьи: https://blog.knoldus.com/

#cloud #engineering #practice 

20 обязательных инструментов для FinOps в практике облачной инженерии
田辺  桃子

田辺 桃子

1680535928

云工程实践中 FinOps 的 20 个必备工具

FinOps,也称为云财务管理,是一种结合财务和运营实践以优化云支出的方法。在云工程实践中,FinOps 工具对于管理和控制云成本至关重要。以下是云工程实践中 FinOps 必备的 20 个工具:

AWS 成本管理器

AWS Cost Explorer 是一种提供成本和使用情况报告的工具,可让您监控您的 AWS 支出并发现节省成本的机会。它提供可视化和建议来帮助您优化 AWS 成本。

Azure 成本管理

Azure 成本管理是一种为 Microsoft Azure 提供成本和使用情况报告的工具。它允许您监控您的 Azure 支出并确定节省成本的机会。Azure 成本管理还提供了帮助优化 Azure 成本的建议。

谷歌云计费

Google Cloud Billing 是一种为 Google Cloud Platform 提供成本和使用情况报告的工具。它允许您监控您的 Google Cloud 支出并确定节省成本的机会。Google Cloud Billing 还提供了帮助您优化 Google Cloud 成本的建议。

云度

Cloudability 是一种为多云环境提供成本优化和治理的工具。它允许您监控和管理跨多个云提供商的云支出,提供建议和警报以帮助您优化云成本。

云健康

CloudHealth 是一种工具,可提供对云成本和使用情况的可见性和控制。它允许您监控您的云支出、确定成本节约机会并优化您的云资源。

大菱鲆

Turbot 是一个云治理平台,可为云资源提供策略自动化和执行。它允许您通过设置管理资源使用方式的策略和规则来管理和控制您的云支出。

公园我的云

ParkMyCloud 是一种为云资源提供自动化成本优化的工具。它允许您为您的云资源安排开/关时间,确保您只为您需要的东西付费。

云端检查器

CloudCheckr 是一种为 AWS、Azure 和 Google Cloud 提供成本优化和治理的工具。它允许您监控您的云支出、确定成本节约机会并优化您的云资源。

正确比例

RightScale 是一种为 AWS、Azure 和 Google Cloud 提供云管理和成本优化的工具。它允许您管理和优化云资源,提供建议和警报以帮助您优化云成本。

柔性

Flexera 是一种为多云环境提供成本优化和治理的工具。它允许您监控和管理跨多个云提供商的云支出,提供建议和警报以帮助您优化云成本。

多云

Cloudyn 是一种为 AWS、Azure 和 Google Cloud 提供成本优化和治理的工具。它允许您监控您的云支出、确定成本节约机会并优化您的云资源。

应用

Apptio 是一种为多云环境提供成本优化和治理的工具。它允许您监控和管理跨多个云提供商的云支出,提供建议和警报以帮助您优化云成本。

云管家

CloudCustodian 是一种开源工具,可为云资源提供策略自动化和实施。它允许您通过设置管理资源使用方式的策略和规则来管理和控制您的云支出。

CloudTrail

CloudTrail 是一项 AWS 服务,可为您的 AWS 资源提供日志记录和审计。它允许您监控和跟踪 AWS 账户中的 API 活动,帮助您识别潜在的安全性和合规性问题。

Azure 安全中心

Azure 安全中心是一个为 Azure 资源提供威胁检测和安全管理的工具。它允许您监视和管理安全威胁,提供建议和警报以帮助您保护 Azure 资源。

谷歌云安全指挥中心

Google Cloud Security Command Center 是一个为 Google Cloud Platform 提供集中安全管理和威胁检测的工具。它允许您监控和管理安全威胁,提供建议和警报以帮助您保护您的 Google Cloud 资源。

HashiCorp 金库

HashiCorp Vault 是一种提供机密和敏感数据安全存储和管理的工具。它允许您跨多个云平台管理对机密和数据的访问,确保您的敏感信息受到保护。

水上安全

Aqua Security 是一种为 Kubernetes 和其他容器环境提供容器安全性和合规性的工具。它允许您监控和管理容器安全风险,提供建议和警报以帮助您保护容器化应用程序。

系统数字

Sysdig 是一个为 Kubernetes 和其他容器环境提供容器安全和监控的工具。它允许您监控和管理容器安全风险,提供建议和警报以帮助您保护容器化应用程序。

厨师 InSpec

Chef InSpec 是一个为云资源提供合规自动化和安全测试的工具。它允许您定义安全策略并自动执行安全测试,确保您的云资源合规且安全。

总之,云财务管理对于优化云支出和确保云资源安全合规至关重要。这 20 个用于云工程实践的必备 FinOps 工具提供了必要的特性和功能来监控、管理和优化云支出,同时确保云资源安全且合规。通过在 DevOps 工作流程中实施这些工具,您可以节省成本、提高运营效率并增强云环境的安全性和合规性。

文章原文出处:https: //blog.knoldus.com/

#cloud #engineering #practice 

云工程实践中 FinOps 的 20 个必备工具
Monty  Boehm

Monty Boehm

1680524940

Best 20 must-have tools for FinOps in Cloud Engineering Practice

FinOps, also known as cloud financial management, is a methodology that combines financial and operational practices to optimize cloud spending. In the cloud engineering practice, FinOps tools are essential for managing and controlling cloud costs. Here are 20 must-have tools for FinOps in cloud engineering practice:

AWS Cost Explorer

AWS Cost Explorer is a tool that provides cost and usage reports, allowing you to monitor your AWS spending and identify cost-saving opportunities. It provides visualizations and recommendations to help you optimize your AWS costs.

Azure Cost Management

Azure Cost Management is a tool that provides cost and usage reports for Microsoft Azure. It allows you to monitor your Azure spending and identify cost-saving opportunities. Azure Cost Management also provides recommendations to help you optimize your Azure costs.

Google Cloud Billing

Google Cloud Billing is a tool that provides cost and usage reports for Google Cloud Platform. It allows you to monitor your Google Cloud spending and identify cost-saving opportunities. Google Cloud Billing also provides recommendations to help you optimize your Google Cloud costs.

Cloudability

Cloudability is a tool that provides cost optimization and governance for multi-cloud environments. It allows you to monitor and manage your cloud spending across multiple cloud providers, providing recommendations and alerts to help you optimize your cloud costs.

CloudHealth

CloudHealth is a tool that provides visibility and control over your cloud costs and usage. It allows you to monitor your cloud spending, identify cost-saving opportunities, and optimize your cloud resources.

Turbot

Turbot is a cloud governance platform that provides policy automation and enforcement for cloud resources. It allows you to manage and control your cloud spending by setting policies and rules that govern how resources are used.

ParkMyCloud

ParkMyCloud is a tool that provides automated cost optimization for cloud resources. It allows you to schedule on/off times for your cloud resources, ensuring that you only pay for what you need.

CloudCheckr

CloudCheckr is a tool that provides cost optimization and governance for AWS, Azure, and Google Cloud. It allows you to monitor your cloud spending, identify cost-saving opportunities, and optimize your cloud resources.

RightScale

RightScale is a tool that provides cloud management and cost optimization for AWS, Azure, and Google Cloud. It allows you to manage and optimize your cloud resources, providing recommendations and alerts to help you optimize your cloud costs.

Flexera

Flexera is a tool that provides cost optimization and governance for multi-cloud environments. It allows you to monitor and manage your cloud spending across multiple cloud providers, providing recommendations and alerts to help you optimize your cloud costs.

Cloudyn

Cloudyn is a tool that provides cost optimization and governance for AWS, Azure, and Google Cloud. It allows you to monitor your cloud spending, identify cost-saving opportunities, and optimize your cloud resources.

Apptio

Apptio is a tool that provides cost optimization and governance for multi-cloud environments. It allows you to monitor and manage your cloud spending across multiple cloud providers, providing recommendations and alerts to help you optimize your cloud costs.

CloudCustodian

CloudCustodian is an open-source tool that provides policy automation and enforcement for cloud resources. It allows you to manage and control your cloud spending by setting policies and rules that govern how resources are used.

CloudTrail

CloudTrail is an AWS service that provides logging and auditing for your AWS resources. It allows you to monitor and track API activity in your AWS account, helping you to identify potential security and compliance issues.

Azure Security Center

Azure Security Center is a tool that provides threat detection and security management for Azure resources. It allows you to monitor and manage security threats, providing recommendations and alerts to help you secure your Azure resources.

Google Cloud Security Command Center

Google Cloud Security Command Center is a tool that provides centralized security management and threat detection for the Google Cloud Platform. It allows you to monitor and manage security threats, providing recommendations and alerts to help you secure your Google Cloud resources.

HashiCorp Vault

HashiCorp Vault is a tool that provides secure storage and management of secrets and sensitive data. It allows you to manage access to secrets and data across multiple cloud platforms, ensuring that your sensitive information is protected.

Aqua Security

Aqua Security is a tool that provides container security and compliance for Kubernetes and other container environments. It allows you to monitor and manage container security risks, providing recommendations and alerts to help you secure your containerized applications.

Sysdig

Sysdig is a tool that provides container security and monitoring for Kubernetes and other container environments. It allows you to monitor and manage container security risks, providing recommendations and alerts to help you secure your containerized applications.

Chef InSpec

Chef InSpec is a tool that provides compliance automation and security testing for cloud resources. It allows you to define security policies and automate security testing, ensuring that your cloud resources are compliant and secure.

In conclusion, cloud financial management is essential for optimizing cloud spending and ensuring that cloud resources are secure and compliant. These 20 must-have FinOps tools for cloud engineering practice provide the necessary features and functionality to monitor, manage, and optimize cloud spending while ensuring that cloud resources are secure and compliant. By implementing these tools in your DevOps workflow, you can achieve cost savings, improve operational efficiency, and enhance the security and compliance posture of your cloud environment.

Original article source at: https://blog.knoldus.com/

#cloud #engineering #practice 

Best 20 must-have tools for FinOps in Cloud Engineering Practice

Guides, Papers, Lecture, Notebooks & Resources for Prompt Engineering

Prompt Engineering Guide

Prompt engineering is a relatively new discipline for developing and optimizing prompts to efficiently use language models (LMs) for a wide variety of applications and research topics. Prompt engineering skills help to better understand the capabilities and limitations of large language models (LLMs). Researchers use prompt engineering to improve the capacity of LLMs on a wide range of common and complex tasks such as question answering and arithmetic reasoning. Developers use prompt engineering to design robust and effective prompting techniques that interface with LLMs and other tools.

Motivated by the high interest in developing with LLMs, we have created this new prompt engineering guide that contains all the latest papers, learning guides, lectures, references, and tools related to prompt engineering.

Happy Prompting!


Guides

The following are a set of guides on prompt engineering developed by us. Guides are work in progress.


If you are using the guide for your work, please cite us as follows:

@article{Saravia_Prompt_Engineering_Guide_2022,
author = {Saravia, Elvis},
journal = {https://github.com/dair-ai/Prompt-Engineering-Guide},
month = {12},
title = {{Prompt Engineering Guide}},
year = {2022}
}

Feel free to open a PR if you think something is missing here. Always welcome feedback and suggestions. Just open an issue!


Announcements / Updates

  • 🎉 We have launched new web version of the guide here
  • 🎓 Partnered with Sphere to deliver a new course on Prompt Engineering for LLMs
  • 💬 New ChatGPT prompt engineering guide coming soon!
  • 🔥 We reached #1 on Hacker News on 21 Feb 2023
  • 🎉 The Prompt Engineering Lecture went live here
  • 🎓 We're creating a set of comprehensive guides here

Join our Discord

Follow us on Twitter

Subscribe to our Newsletter


Lecture

We have published a 1 hour lecture that provides a comprehensive overview of prompting techniques, applications, and tools.


Download Details:

Author: Dair-ai
Source Code: https://github.com/dair-ai/Prompt-Engineering-Guide 
License: MIT license

#deeplearning #engineering #jupyternotebook #notebooks 

Guides, Papers, Lecture, Notebooks & Resources for Prompt Engineering

Как облачная интеграция и миграция Аспекты облачной инженерии

Облачные вычисления стали незаменимым элементом современной ИТ-инфраструктуры. Однако миграция в облако может оказаться сложным процессом, особенно для организаций с существующей локальной инфраструктурой. Одним из наиболее важных шагов в процессе миграции в облако является оценка текущей архитектуры для оценки потенциала внедрения облачных вычислений, создание доказательств концепции (POC) для бизнес-кейсов и интеграция облака с существующими локальными средами.

Вот несколько ключевых шагов, которые необходимо выполнить при оценке существующих архитектур для внедрения облака:

  1. Определите бизнес-цели и варианты использования. Прежде чем оценивать текущую архитектуру, важно определить бизнес-цели и варианты использования, которые будут способствовать внедрению облака. Это поможет организациям расставить приоритеты, какие приложения и данные следует перенести в облако, а какие оставить в локальной среде.
  2. Проведите оценку текущего состояния: проведите подробную оценку существующей инфраструктуры, чтобы определить оборудование, программное обеспечение и сетевые компоненты, которые необходимо перенести в облако. Это поможет организациям понять текущее состояние своей ИТ-инфраструктуры и выявить потенциальные препятствия на пути к внедрению облака.
  3. Оценивайте облачных провайдеров. Оценивайте различных облачных провайдеров на основе их возможностей, функций, цен и безопасности. Это поможет организациям выбрать правильного поставщика облачных услуг, отвечающего потребностям их бизнеса.
  4. Создавайте POC на основе бизнес-кейсов. Создавайте POC на основе выявленных бизнес-кейсов, чтобы протестировать потенциал внедрения облачных вычислений. Это поможет организациям выявить любые потенциальные проблемы с внедрением облака и уточнить стратегию миграции в облако.
  5. Разработайте план миграции в облако. Разработайте подробный план миграции в облако, в котором указаны стратегия миграции, сроки и требования к ресурсам. Это поможет организациям беспрепятственно выполнить процесс миграции в облако и свести к минимуму сбои в бизнес-операциях.
  6. Интегрируйте облако с существующей локальной средой: интегрируйте облако с существующей локальной средой, чтобы обеспечить беспрепятственный доступ к данным и приложениям. Этого можно достичь за счет использования гибридных облачных архитектур, которые позволяют организациям запускать приложения и данные как локально, так и в облаке.

Внедрение облака может быть сложным процессом, и организации должны использовать методический подход для обеспечения успеха. Оценивая существующие архитектуры, создавая POC на основе бизнес-кейсов и интегрируя облако с существующими локальными средами, организации могут воспользоваться преимуществами облачных вычислений, сводя к минимуму сбои в бизнес-операциях. Облако позволяет организациям масштабировать свою инфраструктуру, повышать гибкость, сокращать расходы и повышать уровень безопасности. Поэтому организациям следует уделять приоритетное внимание внедрению облачных технологий в рамках своей общей ИТ-стратегии.

Оригинальный источник статьи:   https://blog.knoldus.com/

#cloud #integration #engineering 

Как облачная интеграция и миграция Аспекты облачной инженерии
木村  直子

木村 直子

1678542438

如何进行云集成和迁移 云工程的方面

云计算已经成为当代 IT 基础架构中不可或缺的一部分。但是,迁移到云可能是一个复杂的过程,尤其是对于具有现有内部部署基础架构的组织而言。云迁移过程中最关键的步骤之一是评估当前架构以评估云计算的实施潜力、构建业务案例的概念验证 (POC) 以及将云与现有的本地环境集成。

以下是评估当前云实施架构时要遵循的一些关键步骤:

  1. 确定业务目标和用例:在评估当前架构之前,必须确定将推动云实施的业务目标和用例。这将帮助组织优先考虑哪些应用程序和数据应该迁移到云端,哪些应该保留在本地。
  2. 进行现状评估:对现有基础架构进行详细评估,以确定需要迁移到云的硬件、软件和网络组件。这将帮助组织了解其 IT 基础架构的当前状态,并确定云实施的潜在障碍。
  3. 评估云提供商:根据不同的云提供商的能力、特点、定价和安全性评估他们。这将帮助组织选择满足其业务需求的合适的云提供商。
  4. 在业务案例上构建 POC:在已识别的业务案例上构建 POC,以测试云计算的实施潜力。这将帮助组织识别云实施的任何潜在问题并改进云迁移策略。
  5. 制定云迁移计划:制定详细的云迁移计划,概述迁移策略、时间表和资源要求。这将帮助组织顺利执行云迁移过程,并最大程度地减少对业务运营的干扰。
  6. 将云与现有的内部部署环境集成:将云与现有的内部部署环境集成,以实现无缝数据和应用程序访问。这可以通过使用混合云架构来实现,该架构使组织能够在本地和云端运行应用程序和数据。

云实施可能是一个复杂的过程,组织应该采取有条不紊的方法来确保成功。通过评估当前架构、根据业务案例构建 POC 以及将云与现有内部部署环境集成,组织可以获得云计算的好处,同时最大限度地减少对业务运营的干扰。云可以使组织扩展他们的基础设施,提高他们的灵活性,降低成本,并增强他们的安全态势。因此,组织应优先考虑云实施作为其整体 IT 战略的一部分。

文章原文出处:https:   //blog.knoldus.com/

#cloud #integration #engineering 

如何进行云集成和迁移 云工程的方面
Lawson  Wehner

Lawson Wehner

1678538640

How to Cloud integration & Migration Aspects Of Cloud Engineering

Cloud computing has become an indispensable fragment of contemporary IT infrastructure. However, the migration to the cloud can be a complex process, especially for organizations with existing on-premise infrastructure. One of the most critical steps in the cloud migration process is assessing the current architecture to evaluate the implementation potential of cloud computing, building proof-of-concepts (POCs) on business cases, and integrating the cloud with existing on-premise environments.

Here are some key steps to follow when assessing current architectures for cloud implementation:

  1. Identify business objectives and use cases: Before assessing the current architecture, it is essential to identify the business objectives and use cases that will drive the cloud implementation. This will help organizations prioritize which applications and data should be migrated to the cloud and which should remain on-premise.
  2. Conduct a current-state assessment: Conduct a detailed assessment of the existing infrastructure to identify the hardware, software, and networking components that need to be migrated to the cloud. This will help organizations understand the current state of their IT infrastructure and identify potential roadblocks to cloud implementation.
  3. Evaluate cloud providers: Evaluate different cloud providers based on their capabilities, features, pricing, and security. This will help organizations select the right cloud provider that meets their business needs.
  4. Build POCs on business cases: Build POCs on the identified business cases to test the implementation potential of cloud computing. This will help organizations identify any potential issues with the cloud implementation and refine the cloud migration strategy.
  5. Develop a cloud migration plan: Develop a detailed cloud migration plan that outlines the migration strategy, timelines, and resource requirements. This will help organizations execute the cloud migration process smoothly and minimize disruptions to business operations.
  6. Integrate cloud with existing on-premise environment: Integrate the cloud with the existing on-premise environment to enable seamless data and application access. This can be achieved through the use of hybrid cloud architectures, which enable organizations to run applications and data both on-premise and in the cloud.

Cloud implementation can be a complex process, and organizations should take a methodical approach to ensure success. By assessing current architectures, building POCs on business cases, and integrating cloud with existing on-premise environments, organizations can reap the benefits of cloud computing while minimizing disruptions to business operations. The cloud can enable organizations to scale their infrastructure, improve their flexibility, reduce costs, and enhance their security posture. Therefore, organizations should prioritize cloud implementation as part of their overall IT strategy.

Original article source at:  https://blog.knoldus.com/

#cloud #integration #engineering 

How to Cloud integration & Migration Aspects Of Cloud Engineering
Royce  Reinger

Royce Reinger

1677479113

NitroFE: A Python Feature Engineering Engine

NitroFE ( Nitro Feature Engineering )

NitroFE is a Python feature engineering engine which provides a variety of modules designed to internally save past dependent values for providing continuous calculation.

Installation

Using pip

Use the package manager to install NitroFE.

pip install NitroFE

Available feature domains

Time based Features

Time based Features

Indicator / windows / moving averages features are dependent on past values for calculation, e.g. a rolling window of size 4 is dependent on past 4 values.

While creating such features during training is quite straighforward , taking it to production becomes challenging as it would requires one to externally save past values and implement logic. Creating indicators becomes even more complex as they are dependent on several other differently sized window components.

NitroFE internally handles saving past dependant values, and makes feature creation hassle free. Just use first_fit=True for your initial fit

  • Jump right in for a handson Open In Colab

The Time based domain is divided into 'Moving average features', 'Weighted window features' and 'indicator based features'

Indicators based Features

Time based Features

NitroFe provides a rich variety of features which are inspired and translated from market indicators.

Moving average features

exponential_moving_feature

In statistics, a moving average (rolling average or running average) is a calculation to analyze data points by creating a series of averages of different subsets of the full data set. NitroFE provides an array of variety of moving averages type for you to utilize.

Weighted window Features

NitroFe provides easy to use functions to create specified weighted window featuresm and send custom operations as per your need


Documentation

https://nitro-ai.github.io/NitroFE/


Download Details:

Author: NITRO-AI
Source Code: https://github.com/NITRO-AI/NitroFE 
License: Apache-2.0 license

#machinelearning #python #time #feature #engineering 

NitroFE: A Python Feature Engineering Engine
Royce  Reinger

Royce Reinger

1677467340

Few: A Feature Engineering Wrapper for Sklearn

Few

Few is a Feature Engineering Wrapper for scikit-learn. Few looks for a set of feature transformations that work best with a specified machine learning algorithm in order to improve model estimation and prediction. In doing so, Few is able to provide the user with a set of concise, engineered features that describe their data.

Few uses genetic programming to generate, search and update engineered features. It incorporates feedback from the ML process to select important features, while also scoring them internally.

Install

You can use pip to install FEW from PyPi as:

pip install few

or you can clone the git repo and add it to your Python path. Then from the repo, run

python setup.py install

Mac users

Some Mac users have reported issues when installing with old versions of gcc (like gcc-4.2) because the random.h library is not included (basically this issue). I recommend installing gcc-4.8 or greater for use with Few. After updating the compiler, you can reinstall with

CC=gcc-4.8 python setupy.py install

Usage

Few uses the same nomenclature as sklearn supervised learning modules. Here is a simple example script:

# import few
from few import FEW
# initialize
learner = FEW(generations=100, population_size=25, ml = LassoLarsCV())
# fit model
learner.fit(X,y)
# generate prediction
y_pred = learner.predict(X_unseen)
# get feature transformation
Phi = learner.transform(X_unseen)

You can also call Few from the terminal as

python -m few.few data_file_name 

try python -m few.few --help to see options.

Examples

Check out few_example.py to see how to apply FEW to a regression dataset.

Publications

If you use Few, please reference our publications:

La Cava, W., and Moore, J.H. A general feature engineering wrapper for machine learning using epsilon-lexicase survival. Proceedings of the 20th European Conference on Genetic Programming (EuroGP 2017), Amsterdam, Netherlands. preprint

La Cava, W., and Moore, J.H. Ensemble representation learning: an analysis of fitness and survival for wrapper-based genetic programming methods. GECCO '17: Proceedings of the 2017 Genetic and Evolutionary Computation Conference. Berlin, Germany. arxiv

Acknowledgments

This method is being developed to study the genetic causes of human disease in the Epistasis Lab at UPenn. Work is partially supported by the Warren Center for Network and Data Science. Thanks to Randy Olson and TPOT for Python guidance.

Download Details:

Author: lacava
Source Code: https://github.com/lacava/few 
License: GPL-3.0 license

#machinelearning #python #engineering #wrapper 

Few: A Feature Engineering Wrapper for Sklearn

Leading A Distributed Engineering Team

Toptal was an early adopter of an all-remote business model. As one of the leading remote workforces worldwide, Toptal strives to engage with other thought leaders and innovators in this space. In our latest on-demand webinar, Toptal Engineering Manager Marco Santos talks with James Bourne, Editor-in-Chief of TechForge Media, about best practices for remote engineering teams.

Your organization has been successful in managing COVID-19 and all of its implications for businesses, but you might be finding that remote work has become more of a way of life rather than a temporary situation. A recent Gartner survey of company leaders found that 82% plan to allow employees to work remotely at least part of the time post-pandemic and 47% will let employees work from home full-time. Furthermore, a PwC survey of CEOs revealed that 78% agree that remote collaboration is here to stay.

Toptal has always had a distributed workforce. As a thought leader in the remote work space, Toptal published The Suddenly Remote Playbook in April 2020 to advise companies that had to make a rapid transition into remote work situations. As someone leading a remote engineering team, you might be thinking that you need to revisit—or determine—best practices.

In particular, it can be tricky to manage a remote engineering team and make sure they have what they need to work to their potential. You had an in-person process for teamwork; is your replacement strategy as robust? Your company structure was good enough when you could physically see who was where in the hierarchy; is it still relevant?

Some tech companies (e.g., Reddit, Twitter) are embracing remote work and evolving their workforce accordingly. Others, such as Microsoft, have adopted a hybrid approach, letting employees work from home up to 50% of the time. What’s clear is that the future of work has undergone a seismic shift, particularly as the sought-after demographic of highly capable tech workers has proven that remote work is possible. Whether or not companies prefer to go back to the previous world of cube farms, that decision is no longer entirely up to them.

In this on-demand webinar, Toptal Engineering Manager Marco Santos talks with James Bourne, Editor-in-Chief of TechForge Media, about the new best practices for remote engineering teams. Toptal was an early adopter of an all-remote business model—and is one of the leading remote workforces worldwide, with more than 600 full-time employees and a global talent network with freelancers in 126 countries.

Some of the key topics include:

  • Establishing the frameworks necessary to drive changes in behavior
  • Using accountability and alignment to make autonomy successful
  • Building trust in a remote culture with a high “say:do” ratio
  • Discovering the magic of asynchronous communication
  • Increasing collaboration in a remote setting

Click here to watch this on-demand webinar and learn more about the policies and pitfalls of leading a remote engineering team—and how to turn an all-remote workforce into an advantage.

Original article source at: https://www.toptal.com/

#engineering #webinar 

Leading A Distributed Engineering Team