Add SuperAGI, Replicate and media api tmdp, ivi, kp, videocdb
This commit is contained in:
parent
be4b40b0af
commit
5d692b9b45
1 changed files with 241 additions and 6 deletions
247
posh.txt
247
posh.txt
|
|
@ -5,7 +5,7 @@ GitHub last commit: https://img.shields.io/github/last-commit/lifailon/PS-Comman
|
|||
GitHub code size: https://img.shields.io/github/languages/code-size/lifailon/PS-Commands
|
||||
GitHub Repo stars: https://img.shields.io/github/stars/Lifailon/PS-Commands
|
||||
|
||||
Статья на Habr: https://habr.com/ru/articles/782592/
|
||||
Статья на Habr: PowerShell и его возможности (https://habr.com/ru/articles/782592/)
|
||||
|
||||
# Help
|
||||
# Object
|
||||
|
|
@ -91,6 +91,12 @@ GitHub Repo stars: https://img.shields.io/github/stars/Lifailon/PS-Commands
|
|||
# Ansible
|
||||
# GigaChat
|
||||
# YandexGPT
|
||||
# SuperAGI
|
||||
# Replicate
|
||||
# TMDB
|
||||
# ivi
|
||||
# Kinopoisk
|
||||
# VideoCDN
|
||||
|
||||
# Help
|
||||
|
||||
|
|
@ -1205,12 +1211,12 @@ Get-ARP -search 192.168.3.100 -proxy dc-01
|
|||
|
||||
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name "PortNumber" # отобразить номер текущего RDP порта
|
||||
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name "PortNumber" -Value "3390" # изменить RDP-порт
|
||||
New-NetFirewallRule -Profile Any -DisplayName "RDP 3390" -Direction Inbound -Protocol TCP -LocalPort 3390 # открыть RDP-порт
|
||||
Get-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server\" -Name "fDenyTSConnections"
|
||||
Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server\" -Name "fDenyTSConnections" -Value 0 # включить rdp
|
||||
$(Get-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server\" -Name "fDenyTSConnections").fDenyTSConnections # если 0, то включен
|
||||
Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server\" -Name "fDenyTSConnections" -Value 0 # включить RDP
|
||||
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
|
||||
(gcim -Class Win32_TerminalServiceSetting -Namespace root\CIMV2\TerminalServices).SetAllowTSConnections(0) # включить RDP
|
||||
(gcim -Class Win32_TerminalServiceSetting -Namespace root\CIMV2\TerminalServices).SetAllowTSConnections(0) # включить RDP (для Windows Server)
|
||||
Get-Service TermService | Restart-Service -Force # перезапустить rdp-службу
|
||||
New-NetFirewallRule -Profile Any -DisplayName "RDP 3390" -Direction Inbound -Protocol TCP -LocalPort 3390 # открыть RDP-порт
|
||||
|
||||
### IPBan
|
||||
|
||||
|
|
@ -6527,7 +6533,7 @@ curl --request POST \
|
|||
-d "$body" \
|
||||
"https://llm.api.cloud.yandex.net/foundationModels/v1/completion"
|
||||
|
||||
|
||||
###PowerShell
|
||||
$model = "gpt://$FOLDER_ID/yandexgpt/latest"
|
||||
$body = @"
|
||||
{
|
||||
|
|
@ -6546,3 +6552,232 @@ $body = @"
|
|||
}
|
||||
"@
|
||||
Invoke-RestMethod -Method POST -Uri "https://llm.api.cloud.yandex.net/foundationModels/v1/completion" -Headers @{"Content-Type"="application/json"; "Authorization"="Bearer $IAM_TOKEN"; "x-folder-id"="$FOLDER_ID"} -Body $body
|
||||
|
||||
# SuperAGI
|
||||
|
||||
https://github.com/TransformerOptimus/SuperAGI
|
||||
https://models.superagi.com/playground/generate
|
||||
https://documenter.getpostman.com/view/30119783/2s9YR3cFJG
|
||||
|
||||
SUPERAGI_API_KEY="31f72164129XXXXX"
|
||||
prompt="посчитай сумму 22+33, дай только ответ без лишнего текста"
|
||||
request=$(curl -s -X POST 'https://api.superagi.com/v1/generate/65437cbf227a4018516ad1ce' \
|
||||
-H 'Content-Type: application/json' \
|
||||
-H "Authorization: Bearer $SUPERAGI_API_KEY" \
|
||||
-d '{
|
||||
"prompt": ["$prompt"],
|
||||
"max_tokens": 500,
|
||||
"temperature": 0.9,
|
||||
"top_p": 0.15,
|
||||
"repetition_penalty": 0,
|
||||
"best_of": 1.05,
|
||||
"top_k": 50,
|
||||
"stream": false
|
||||
}')
|
||||
echo $request | sed "s/data: //" | jq -r .choices[].text
|
||||
|
||||
###PowerShell
|
||||
$SUPERAGI_API_KEY = "31f72164129XXXXX"
|
||||
$prompt = "посчитай сумму 22+33, дай только ответ без лишнего текста"
|
||||
$request = Invoke-RestMethod -Method Post -Uri 'https://api.superagi.com/v1/generate/65437cbf227a4018516ad1ce' -Headers @{
|
||||
'Content-Type' = 'application/json'
|
||||
'Authorization' = "Bearer $SUPERAGI_API_KEY"
|
||||
} -Body (@{
|
||||
prompt = @($prompt)
|
||||
max_tokens = 500
|
||||
temperature = 0.9
|
||||
top_p = 0.15
|
||||
repetition_penalty = 0
|
||||
best_of = 1.05
|
||||
top_k = 50
|
||||
stream = $false
|
||||
} | ConvertTo-Json)
|
||||
$($request -replace "^data: " | ConvertFrom-Json).choices.text
|
||||
|
||||
# Replicate
|
||||
|
||||
https://replicate.com/stability-ai/stable-diffusion/examples?input=http
|
||||
|
||||
REPLICATE_API_TOKEN="r8_STyeUNXiGonkLfxE1FSKaqll26lXXXXXXXXXX"
|
||||
prompt="Жираф в полоску зебры"
|
||||
request=$(curl -s -X POST \
|
||||
-H "Authorization: Token $REPLICATE_API_TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d $'{
|
||||
"version": "ac732df83cea7fff18b8472768c88ad041fa750ff7682a21affe81863cbe77e4",
|
||||
"input": {
|
||||
"prompt": "$prompt"
|
||||
}
|
||||
}' \
|
||||
https://api.replicate.com/v1/predictions)
|
||||
request_url=$(echo $request | jq -r .urls.get)
|
||||
response_status=$(curl -s -H "Authorization: Token $REPLICATE_API_TOKEN" $request_url | jq -r .status)
|
||||
while [[ $response_status != succeeded ]]; do
|
||||
response_status=$(curl -s -H "Authorization: Token $REPLICATE_API_TOKEN" $request_url | jq -r .status)
|
||||
done
|
||||
curl -s -H "Authorization: Token $REPLICATE_API_TOKEN" $request_url | jq -r .output[]
|
||||
|
||||
###PowerShell
|
||||
$REPLICATE_API_TOKEN = "r8_STyeUNXiGonkLfxE1FSKaqll26lXXXXXXXXXX"
|
||||
$prompt = "Жираф в полоску зебры"
|
||||
$body = @{
|
||||
version = "ac732df83cea7fff18b8472768c88ad041fa750ff7682a21affe81863cbe77e4"
|
||||
input = @{
|
||||
prompt = $prompt
|
||||
}
|
||||
} | ConvertTo-Json
|
||||
$headers = @{
|
||||
"Authorization" = "Token $REPLICATE_API_TOKEN"
|
||||
"Content-Type" = "application/json"
|
||||
}
|
||||
$request = Invoke-RestMethod -Uri "https://api.replicate.com/v1/predictions" -Method POST -Body $body -Headers $headers
|
||||
$response = Invoke-RestMethod $($request.urls.get) -Headers @{"Authorization" = "Token $REPLICATE_API_TOKEN"}
|
||||
while ($response.status -ne "succeeded") {
|
||||
$response = Invoke-RestMethod $($request.urls.get) -Headers @{"Authorization" = "Token $REPLICATE_API_TOKEN"}
|
||||
}
|
||||
$response.output
|
||||
|
||||
# TMDB
|
||||
|
||||
https://developer.themoviedb.org/reference/intro/getting-started
|
||||
|
||||
$TOKEN = "548e444e7812575caa0a7eXXXXXXXXXX"
|
||||
$Endpoint = "search/tv" # поиск сериала (tv) и фильма (movie) по названию
|
||||
$Query = "зимородок"
|
||||
$url = $("https://api.themoviedb.org/3/$Endpoint"+"?api_key=$TOKEN&query=$Query")
|
||||
$(Invoke-RestMethod -Uri $url -Method Get).results
|
||||
$id = $(Invoke-RestMethod -Uri $url -Method Get).results.id # забрать id сериала (210865) https://www.themoviedb.org/tv/210865
|
||||
|
||||
$Endpoint = "tv/$id" # получение информации о сериале по его ID
|
||||
$url = $("https://api.themoviedb.org/3/$Endpoint"+"?api_key=$TOKEN")
|
||||
$(Invoke-RestMethod -Uri $url -Method Get) # список сезонов (.seasons), количество эпизодов (.seasons.episode_count)
|
||||
|
||||
(Invoke-RestMethod -Uri "https://api.themoviedb.org/3/tv/$id/season/2?api_key=$Token" -Method Get).episodes # вывести 2 сезон
|
||||
Invoke-RestMethod -Uri "https://api.themoviedb.org/3/tv/$id/season/2/episode/8?api_key=$Token" -Method Get # вывести 8 эпизод
|
||||
|
||||
# ivi
|
||||
|
||||
https://ask.ivi.ru/knowledge-bases/10/articles/51697-dokumentatsiya-dlya-api-ivi
|
||||
|
||||
Invoke-RestMethod https://api.ivi.ru/mobileapi/categories # список категорий и жанров (genres/meta_genres)
|
||||
Invoke-RestMethod https://api.ivi.ru/mobileapi/collections # подборки
|
||||
|
||||
(Invoke-RestMethod "https://api.ivi.ru/mobileapi/search/v7/?query=zimorodok").result.seasons.number # кол-во сезонов
|
||||
(Invoke-RestMethod "https://api.ivi.ru/mobileapi/search/v7/?query=zimorodok").result.seasons[1].episode_count # кол-во серий во втором сезоне
|
||||
(Invoke-RestMethod "https://api.ivi.ru/mobileapi/search/v7/?query=zimorodok").result.seasons[1].ivi_release_info.date_interval_min # дата выхода следующей серии
|
||||
(Invoke-RestMethod "https://api.ivi.ru/mobileapi/search/v7/?query=zimorodok").result.kp_rating # рейтинг в Кинопоиск (8.04)
|
||||
|
||||
$id = (Invoke-RestMethod "https://api.ivi.ru/mobileapi/search/v7/?query=zimorodok").result.kp_id # получить id в Кинопоиск (5106881)
|
||||
id=$(curl -s https://api.ivi.ru/mobileapi/search/v7/?query=zimorodok | jq .result[].kp_id) # получить id в Кинопоиск
|
||||
|
||||
# Kinopoisk
|
||||
|
||||
id=5106881
|
||||
get=$(curl -s https://www.kinopoisk.ru/film/$id/episodes/)
|
||||
printf "%s\n" "${get[@]}" | grep -A 1 "Сезон 2" | grep "эпизодов" | sed -r "s/^.+\: //" # количество эпиздовод во втором сезоне (8)
|
||||
|
||||
### kinopoisk.dev
|
||||
|
||||
https://t.me/kinopoiskdev_bot # получить токен
|
||||
https://kinopoisk.dev/documentation # документация по API в формате OpenAPI
|
||||
|
||||
GET /v1.4/movie/{id} # поиск по id
|
||||
|
||||
$id = 5106881
|
||||
$API_KEY = "ZYMNJJA-0J8MNPN-PB4N7R7-XXXXXXX"
|
||||
|
||||
$Header = @{
|
||||
"accept" = "application/json"
|
||||
"X-API-KEY" = "$API_KEY"
|
||||
}
|
||||
$irm = Invoke-RestMethod "https://api.kinopoisk.dev/v1.4/movie/$id" -Method GET -Headers $Header
|
||||
$irm.rating.kp # рейтинг в Кинопоиск (8,079)
|
||||
$irm.seasonsInfo # количество сезонов и эпизодов в них
|
||||
|
||||
###Bash
|
||||
id=5106881
|
||||
API_KEY="ZYMNJJA-0J8MNPN-PB4N7R7-XXXXXXX"
|
||||
get=$(curl -s -X GET \
|
||||
"https://api.kinopoisk.dev/v1.4/movie/$id" \
|
||||
-H "accept: application/json" \
|
||||
-H "X-API-KEY: $API_KEY")
|
||||
echo $get | jq .rating.kp # рейтинг в Кинопоиск (8,079)
|
||||
echo $get | jq .seasonsInfo[1].episodesCount # количество эпизодов во втором [1] сезоне (6)
|
||||
|
||||
GET /v1.4/movie/search
|
||||
|
||||
query="zimorodok"
|
||||
page=1 # кол-во страниц для выборки
|
||||
limit=1 # кол-во элементов на странице
|
||||
curl -s -X GET \
|
||||
"https://api.kinopoisk.dev/v1.4/movie/search?page=$page&limit=$limit&query=$query" \
|
||||
-H "accept: application/json" \
|
||||
-H "X-API-KEY: $API_KEY" | jq .
|
||||
|
||||
limit=5
|
||||
request=$(curl -s -X GET \
|
||||
"https://api.kinopoisk.dev/v1.4/movie/search?page=$page&limit=$limit&query=%D0%B7%D0%B8%D0%BC%D0%BE%D1%80%D0%BE%D0%B4%D0%BE%D0%BA" \
|
||||
-H "accept: application/json" \
|
||||
-H "X-API-KEY: $API_KEY" | jq .)
|
||||
echo $request | jq '.docs[] | select(.year == 2022)' # отфильтровать вывод по году выхода
|
||||
|
||||
###PowerShell
|
||||
$API_KEY = "ZYMNJJA-0J8MNPN-PB4N7R7-XXXXXXX"
|
||||
$page = 1
|
||||
$limit = 5
|
||||
$query = "%D0%B7%D0%B8%D0%BC%D0%BE%D1%80%D0%BE%D0%B4%D0%BE%D0%BA"
|
||||
$request = Invoke-RestMethod -Uri "https://api.kinopoisk.dev/v1.4/movie/search?page=$page&limit=$limit&query=$query" -Headers @{"accept"="application/json"; "X-API-KEY"="$API_KEY"}
|
||||
$request.docs | Where-Object year -eq 2022
|
||||
|
||||
### UrlCode
|
||||
|
||||
function Get-PercentEncode ($str) {
|
||||
$bytes = [System.Text.Encoding]::UTF8.GetBytes($str)
|
||||
($bytes | ForEach-Object { "{0:X2}" -f $_ }) -join '%' -replace "^","%"
|
||||
}
|
||||
Get-PercentEncode "зимородок"
|
||||
|
||||
###PowerShell
|
||||
function Get-UrlEncode($str) {
|
||||
[System.Web.HttpUtility]::UrlEncode($str)
|
||||
}
|
||||
UrlEncode "зимородок"
|
||||
|
||||
###Bash
|
||||
percent-encode() {
|
||||
str=$1
|
||||
echo -n "$1" | iconv -t utf8 | od -An -tx1 | tr ' ' % | tr -d '\n'
|
||||
}
|
||||
percent-encode "зимородок"
|
||||
|
||||
###PowerShell
|
||||
function Get-UrlDecode($encoded) {
|
||||
[System.Uri]::UnescapeDataString($encoded)
|
||||
}
|
||||
Get-UrlDecode "%D0%B7%D0%B8%D0%BC%D0%BE%D1%80%D0%BE%D0%B4%D0%BE%D0%BA"
|
||||
|
||||
###Bash
|
||||
percent-decode() {
|
||||
encoded=$1
|
||||
local url_encoded="${1//+/ }"
|
||||
printf '%b' "${url_encoded//%/\\x}"
|
||||
}
|
||||
percent-decode "%D0%B7%D0%B8%D0%BC%D0%BE%D1%80%D0%BE%D0%B4%D0%BE%D0%BA"
|
||||
|
||||
# VideoCDN
|
||||
|
||||
https://github.com/notssh/videocdn-api
|
||||
https://github.com/API-Movies/videocdn
|
||||
https://api-movies.github.io/videocdn/index.json
|
||||
|
||||
$kp_id = 5106881
|
||||
$token = "YfTWH2p3Mai7ziqDoGjS3yXXXXXXXXXX"
|
||||
$ep = "tv-series"
|
||||
$(Invoke-RestMethod $("https://videocdn.tv/api/$ep"+"?api_token=$token&field=kinopoisk_id&query=$kp_id")).data.episodes | Where-Object season_num -eq 2 | Select-Object @{Name="Episode"; Expression={$_.num}}, @{Name="Voice"; Expression={$_.media.translation.title}} # отфильтровать серии по второму сезону и отобразить все озвучки к сериям
|
||||
|
||||
###Bash
|
||||
kp_id=5106881
|
||||
token="YfTWH2p3Mai7ziqDoGjS3yXXXXXXXXXX"
|
||||
ep="tv-series"
|
||||
curl -s "https://videocdn.tv/api/$ep?api_token=$token&field=kinopoisk_id&query=$kp_id" | jq ".data[].episodes | length" # количество серий
|
||||
curl -s "https://videocdn.tv/api/$ep?api_token=$token&field=kinopoisk_id&query=$kp_id" | jq ".data[].episodes[] | select(.season_num == 2) | {episode: .ru_title, voice: .media[].translation.title}" # отфильтровать параметры вывода
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue