Compare commits

...

30 Commits

Author SHA1 Message Date
gitea 1c240342c5 Logging 2024-04-10 15:04:37 +02:00
gitea 7bd0c0aca4 Fix 2.6 2024-04-10 15:04:37 +02:00
gitea 7c8ad99743 Fix 2 2024-04-10 15:04:37 +02:00
gitea 90896fa9be Fix 1 2024-04-10 15:04:37 +02:00
gitea e3bec6bc11 Playlist based on chat history 2024-04-10 15:04:37 +02:00
gitea aa00045dec Trunk + mod 2024-04-10 15:04:32 +02:00
gitea 06e3671ec2 Linting is done 2024-04-10 15:04:22 +02:00
gitea 0879796cc6 Linting 2024-04-10 15:04:13 +02:00
gitea 9f756b3092 Dodana procedura asynchronicznej generacji iteratora oraz komentarz w
jaki sposob inaczej przerobic fora na asynchroniczny. Przydatne ze
wzgledu na to ze szukajka nadal blokuje heartbeat bota - co skutkuje
warningnami i wyjatkami
2024-04-10 15:04:09 +02:00
gitea 579a3f2a52 Reakcje ladacznicy, poprawka na mention w reset the clock 2024-04-10 15:04:09 +02:00
gitea 5505022dbb Funkcjonalnosc logowania incydentow w Absinth Eldritch Horror
Hammertimespace Continuum
2024-04-10 15:04:05 +02:00
gitea d2e5a34b87 Mala poprawka na rozmiar plikow pamieci 2024-04-10 15:03:55 +02:00
gitea c7696fafdc Fixed playlist gen 2024-04-10 15:03:43 +02:00
gitea 7f3de2ea13 Kurwa bugfix pod windowsa 2024-04-10 15:03:42 +02:00
gitea ec505f050f modified 2024-04-10 14:22:01 +02:00
gitea f55c4ce1a7 Nowy lepszy trunk
Additional lines of code

1

AAA
2024-04-10 14:22:00 +02:00
gitea 432abc73b9 Upgrade gpt model 2024-04-10 14:22:00 +02:00
gitea cdaf2589b3 Library update
fix

1111

tezz
2024-04-10 14:22:00 +02:00
gitea 67ab3b4bba Docstring + bugfixes + random cyclic message
Nowy commit
2024-04-10 14:22:00 +02:00
gitea 71623d9812 Update fabryczka
:)

:)
2024-04-10 14:22:00 +02:00
gitea ce54233908 Fix. Was joking. 2024-04-10 14:22:00 +02:00
gitea b0df66c5da Fix. Last. 2024-04-10 14:22:00 +02:00
gitea fda2733600 Token amount change
Last (hopefully) fix

Fix+1

Fix

Fix

Fix

Test

Fix tokens

Fix
2024-04-10 14:22:00 +02:00
gitea 027050a4dd Token counter 2024-04-10 14:22:00 +02:00
gitea b22b9add15 Gpt fixes
FIx

Fix

Fix

Fix. Another.

!

Fix

Tiktoken

Fix

Fix
2024-04-10 14:22:00 +02:00
gitea 1fd5b8cfac GPT fixes
Fix

Test
2024-04-10 14:22:00 +02:00
gitea 5e3d90c038 Nope. It did not happen
Rollback not working

Nowe
2024-04-10 14:22:00 +02:00
gitea fef53a3587 Test heartbeat fix 2024-04-10 14:22:00 +02:00
gitea be1e338e54 Fixes + upgrade GPT model
Fix 2.0

Fix

Nope
2024-04-10 14:22:00 +02:00
gitea d6dd276a92 Mention conjurer 2024-04-10 14:22:00 +02:00
16 changed files with 1993 additions and 232 deletions
+2 -1
View File
@@ -2,7 +2,8 @@
*logs *logs
*actions *actions
*notifications *notifications
*tools
plugins plugins
user_trunk.yaml user_trunk.yaml
user.yaml user.yaml
tools tmp
+2
View File
@@ -0,0 +1,2 @@
[settings]
profile=black
-3
View File
@@ -2,9 +2,6 @@ rules:
quoted-strings: quoted-strings:
required: only-when-needed required: only-when-needed
extra-allowed: ["{|}"] extra-allowed: ["{|}"]
empty-values:
forbid-in-block-mappings: true
forbid-in-flow-mappings: true
key-duplicates: {} key-duplicates: {}
octal-values: octal-values:
forbid-implicit-octal: true forbid-implicit-octal: true
+5
View File
@@ -0,0 +1,5 @@
# Generic, formatter-friendly config.
select = ["B", "D3", "E", "F"]
# Never enforce `E501` (line length violations). This should be handled by formatters.
ignore = ["E501"]
+23 -30
View File
@@ -1,43 +1,36 @@
# This file controls the behavior of Trunk: https://docs.trunk.io/cli
# To learn more about the format of this file, see https://docs.trunk.io/reference/trunk-yaml
version: 0.1 version: 0.1
cli: cli:
version: 1.12.3 version: 1.20.1
# Trunk provides extensibility via plugins. (https://docs.trunk.io/plugins)
plugins: plugins:
sources: sources:
- id: trunk - id: trunk
ref: v0.0.22 ref: v1.4.5
uri: https://github.com/trunk-io/plugins uri: https://github.com/trunk-io/plugins
lint: # Many linters and tools depend on runtimes - configure them here. (https://docs.trunk.io/runtimes)
enabled:
- checkov@2.3.75
- yamllint@1.26.3
- actionlint@1.6.25
- markdownlint@0.35.0
- trivy@0.43.1
- trufflehog@3.44.0
- pylint
- codespell
- cspell
- git-diff-check
- eslint
- prettier
- semgrep
- autopep8
- bandit
- black
- flake8
- isort
- mypy
- pylint
- ruff
- semgrep
- yapf
- gitleaks
runtimes: runtimes:
enabled: enabled:
- go@1.19.5
- node@18.12.1 - node@18.12.1
- python@3.10.8 - python@3.10.8
# This is the section where you manage your linters. (https://docs.trunk.io/check/configuration)
lint:
enabled:
- actionlint@1.6.27
- bandit@1.7.8
- black@24.3.0
- codespell
- checkov@3.2.48
- git-diff-check
- isort@5.13.2
- pylint
- markdownlint@0.39.0
- prettier@3.2.5
- ruff@0.3.4
- trivy@0.50.1
- trufflehog@3.71.0
- yamllint@1.35.1
actions: actions:
disabled: disabled:
- trunk-announce - trunk-announce
-2
View File
@@ -1,6 +1,4 @@
{ {
"python.linting.enabled": true,
"python.linting.pylintEnabled": true,
"trunk.inlineDecorators": true, "trunk.inlineDecorators": true,
"trunk.inlineDecoratorsForAllExtensions": true, "trunk.inlineDecoratorsForAllExtensions": true,
"trunk.showPreexistingIssues": true, "trunk.showPreexistingIssues": true,
+15 -97
View File
@@ -68,11 +68,6 @@ MEMORY_FIVE_MUZYKA = ""
SETTINGS_FILE = "" SETTINGS_FILE = ""
ENCODING = "" ENCODING = ""
GRAPHICS_PATH = "" GRAPHICS_PATH = ""
MUZYKA_MOJEGO_LUDU_HISTORIA = 1500
MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE = 15
MUZYKA_MOJEGO_LUDU_PLAJLISTA = 30
# *=========================================== Platform Specific Predefines # *=========================================== Platform Specific Predefines
if platform in ("linux", "linux2"): if platform in ("linux", "linux2"):
@@ -192,6 +187,7 @@ async def on_ready():
logger.debug("%s has connected to Discord!", client.user) logger.debug("%s has connected to Discord!", client.user)
await client.change_presence(activity=discord.Game(name="Axe Throwing Darts")) await client.change_presence(activity=discord.Game(name="Axe Throwing Darts"))
await client.tree.sync() await client.tree.sync()
# await tree.sync(guild=discord.Object(id=Your guild id))
await check() await check()
@@ -568,18 +564,10 @@ async def handle_response(prompt, vykidailo, bartender, history, username, music
# * extend bo 20 ostatnich # * extend bo 20 ostatnich
if music: if music:
history.append(message_table_muzyka[0]) history.append(message_table_muzyka[0])
history.extend(message_table_muzyka[-15:]) history.extend(message_table_muzyka[-20:])
response = await openai.ChatCompletion.acreate(
model="gpt-4-32k", messages=history
)
else: else:
history.append(MESSAGE_TABLE[0]) history.append(MESSAGE_TABLE[0])
history.extend(MESSAGE_TABLE[-15:]) history.extend(MESSAGE_TABLE[-20:])
response = await openai.ChatCompletion.acreate(
model="gpt-3.5-turbo-16k", messages=history
)
logger.info("Historia wysłana:") logger.info("Historia wysłana:")
logger.debug(history) logger.debug(history)
response = await openai.ChatCompletion.acreate( response = await openai.ChatCompletion.acreate(
@@ -831,11 +819,11 @@ async def wyszukaj(ctx, how_many=0, slowa_kluczowe=None):
skip_start = 2 skip_start = 2
else: else:
skip_start = 1 skip_start = 1
async for word in async_iterator_generator(word_list[skip_start:]): for word in word_list[skip_start:]:
token_weight = len(word) token_weight = len(word)
logger.info("Słowo kluczowe: %s", word) logger.info("Słowo kluczowe: %s", word)
itr = 0 itr = 0
async for file in async_iterator_generator(music_file_list): for file in music_file_list:
file = file.split(SEPARATOR_FILE_PATH) file = file.split(SEPARATOR_FILE_PATH)
char_remove = [ char_remove = [
@@ -861,9 +849,9 @@ async def wyszukaj(ctx, how_many=0, slowa_kluczowe=None):
"mp3", "mp3",
] ]
all_words = [] all_words = []
async for f_iter in async_iterator_generator(file): for f_iter in file:
async for char in async_iterator_generator(char_remove): for char in char_remove:
f_iter = await remove_characters(f_iter, char) f_iter = f_iter.replace(char, "")
tmp = f_iter.split() tmp = f_iter.split()
all_words.extend(tmp) all_words.extend(tmp)
pingu = 1 pingu = 1
@@ -873,7 +861,7 @@ async def wyszukaj(ctx, how_many=0, slowa_kluczowe=None):
else: else:
skip = 4 skip = 4
matched_times = 1 matched_times = 1
async for itm in async_iterator_generator(all_words[skip:]): for itm in all_words[skip:]:
pingu += 1 pingu += 1
pattern = ".*" + word + ".*" pattern = ".*" + word + ".*"
if re.match(pattern, itm, re.IGNORECASE): if re.match(pattern, itm, re.IGNORECASE):
@@ -909,18 +897,6 @@ async def wyszukaj(ctx, how_many=0, slowa_kluczowe=None):
return return_list return return_list
async def remove_characters(string, character):
"""
The `remove_characters` function removes all occurrences of a specified character from a given
string.
:param string: The string parameter is the input string from which characters will be removed
:param character: The character parameter is the character that you want to remove from the string
:return: a new string where all occurrences of the specified character have been removed.
"""
return string.replace(character, "")
async def max_weight(lista): async def max_weight(lista):
""" """
Take a list of weights and return the maximum weight. Take a list of weights and return the maximum weight.
@@ -1378,7 +1354,7 @@ async def zrob_mi_plejliste(ctx):
if metadata.tag.title: if metadata.tag.title:
reply += " z prywatnej kolekcji Hammera i na Twoją specjalną rpośbę.\n" reply += " z prywatnej kolekcji Hammera i na Twoją specjalną rpośbę.\n"
else: else:
reply += f"{index}. {plik[1]} z prywatnej kolekcji Hammera.\n" reply += f"{index}. {plik[1]} z prywatnej kolekcji Hammera."
index += 1 index += 1
if len(reply) > 1800: if len(reply) > 1800:
@@ -1554,8 +1530,6 @@ async def get_image_stable_diffusion(ctx):
description="Gra muzyke wyszukana na bazie tematow konwersacji na kanale NZ", description="Gra muzyke wyszukana na bazie tematow konwersacji na kanale NZ",
guild=discord.Object(id=664789470779932693), guild=discord.Object(id=664789470779932693),
) )
# trunk-ignore(pylint/R0912)
# trunk-ignore(pylint/R0915)
async def zagraj_muzyke_mego_ludu(ctx): async def zagraj_muzyke_mego_ludu(ctx):
""" """
Play completeley random playlist based on messaging history. Play completeley random playlist based on messaging history.
@@ -1567,31 +1541,22 @@ async def zagraj_muzyke_mego_ludu(ctx):
""" """
stats = {} stats = {}
if ctx: if ctx:
logger.info("Zagraj muzyke mego ludu: wywolane") stat_iter = get_stats(ctx, 1500)
stat_iter = get_stats(ctx, MUZYKA_MOJEGO_LUDU_HISTORIA)
async for name, how_many in stat_iter: async for name, how_many in stat_iter:
if len(name) > 3: if len(name) > 3:
stats[name] = how_many stats[name] = how_many
sorted_stats = sorted(stats.items(), key=lambda x: x[1]) sorted_stats = sorted(stats.items(), key=lambda x: x[1])
logger.info("Zagraj muzyke mego ludu:zebrano statystyki")
key_words = [] key_words = []
for stat in sorted_stats: for stat in sorted_stats:
key_words.append(stat[0]) key_words.append(stat[0])
logger.info(sorted_stats[:MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE]) logger.info(sorted_stats[:30])
logger.info(key_words[:MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE]) logger.info(key_words[:30])
logger.info(sorted_stats[-MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE:])
logger.info(key_words[-MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE:])
final_key_words = key_words[:MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE]
final_key_words.extend(key_words[-MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE:])
reply = "Wygenerowana plejlista:\n" reply = "Wygenerowana plejlista:\n"
async with ctx.typing(): async with ctx.typing():
logger.info("Zaczynam szukać timestamp %s", datetime.now()) logger.info("Zaczynam szukać timestamp %s", datetime.now())
search_time_glob = datetime.now() search_time_glob = datetime.now()
file = await wyszukaj(ctx=ctx, how_many=MUZYKA_MOJEGO_LUDU_PLAJLISTA, slowa_kluczowe=final_key_words) file = await wyszukaj(ctx=ctx, how_many=100, slowa_kluczowe=key_words[:30])
logger.info("Zagraj muzyke mego ludu:wygenerowano plejliste")
logger.info(file)
logger.info( logger.info(
"Koniec szukania(timestamp %s zajęło %s", "Koniec szukania(timestamp %s zajęło %s",
datetime.now(), datetime.now(),
@@ -1617,7 +1582,7 @@ async def zagraj_muzyke_mego_ludu(ctx):
if metadata.tag.title: if metadata.tag.title:
reply += " z prywatnej kolekcji Hammera i na Twoją specjalną rpośbę.\n" reply += " z prywatnej kolekcji Hammera i na Twoją specjalną rpośbę.\n"
else: else:
reply += f"{index}. {plik[1]} z prywatnej kolekcji Hammera.\n" reply += f"{index}. {plik[1]} z prywatnej kolekcji Hammera."
index += 1 index += 1
if len(reply) > 1800: if len(reply) > 1800:
@@ -1631,53 +1596,6 @@ async def zagraj_muzyke_mego_ludu(ctx):
logger.info("Plejlista zrobiona") logger.info("Plejlista zrobiona")
# trunk-ignore(mypy/arg-type)
@client.hybrid_command(
name="parametry_muzyki_mego_ludu",
description="Konfiguruje komende zagraj muzyke mojego ludu",
guild=discord.Object(id=664789470779932693),
)
async def parametry_muzyki_mego_ludu(ctx, ile_historii=1500, ile_slow_kluczowych=15, jak_dluga_plejlista=30):
"""
The function `parametry_muzyki_mego_ludu` sets global variables for the number of history entries,
number of keywords, and length of playlist for a music application.
:param ctx: The `ctx` parameter is typically used in Discord.py, a Python library for creating
Discord bots. It represents the context of the command being executed, including information about
the message, the server, and the user who invoked the command
:param ile_historii: The parameter "ile_historii" represents the number of history items for the
music playlist, defaults to 1500 (optional)
:param ile_slow_kluczowych: The parameter "ile_slow_kluczowych" represents the number of keywords or
key phrases related to music that you want to include in your analysis or search, defaults to 30
(optional)
:param jak_dluga_plejlista: The parameter "jak_dluga_plejlista" determines the length of the
playlist. It specifies how many songs should be included in the playlist, defaults to 30 (optional)
"""
if ctx:
async with ctx.typing():
# if ':' in ile_historii:
# _, _, ile_historii = ile_historii.partition(':')
# if ':' in ile_slow_kluczowych:
# _, _, ile_slow_kluczowych = ile_slow_kluczowych.partition(':')
# if ':' in jak_dluga_plejlista:
# _, _, jak_dluga_plejlista = jak_dluga_plejlista.partition(':')
try:
global MUZYKA_MOJEGO_LUDU_HISTORIA # pylint: disable=global-statement
global MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE # pylint: disable=global-statement
global MUZYKA_MOJEGO_LUDU_PLAJLISTA # pylint: disable=global-statement
logger.info("Długość historii wyszukiwania: %s\n Ilość słów kluczowych: %s\n Długość plejlisty do wygenerowanie: %s", MUZYKA_MOJEGO_LUDU_HISTORIA, MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE, MUZYKA_MOJEGO_LUDU_PLAJLISTA)
ctx.send(f"Dotychczasowe wartośći:\n Długość historii wyszukiwania: {MUZYKA_MOJEGO_LUDU_HISTORIA}\n Ilość słów kluczowych: {MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE}\n Długość plejlisty do wygenerowanie:{MUZYKA_MOJEGO_LUDU_PLAJLISTA}")
MUZYKA_MOJEGO_LUDU_HISTORIA = ile_historii
MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE = ile_slow_kluczowych
MUZYKA_MOJEGO_LUDU_PLAJLISTA = jak_dluga_plejlista
logger.info("Długość historii wyszukiwania: %s\n Ilość słów kluczowych: %s\n Długość plejlisty do wygenerowanie: %s", MUZYKA_MOJEGO_LUDU_HISTORIA, MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE, MUZYKA_MOJEGO_LUDU_PLAJLISTA)
ctx.send(f"Zmienione wartośći:\n Długość historii wyszukiwania: {MUZYKA_MOJEGO_LUDU_HISTORIA}\n Ilość słów kluczowych: {MUZYKA_MOJEGO_LUDU_SLOWA_KLUCZOWE}\n Długość plejlisty do wygenerowanie:{MUZYKA_MOJEGO_LUDU_PLAJLISTA}")
except discord.ext.commands.errors.BadArgument as exce:
ctx.send("Spierdalaj")
logger.info(exce)
# *================================== Run # *================================== Run
# trunk-ignore(mypy/arg-type) # trunk-ignore(mypy/arg-type)
client.run(TOKEN) client.run(TOKEN)
+1707
View File
File diff suppressed because it is too large Load Diff
+58
View File
@@ -0,0 +1,58 @@
# trunk-ignore-all(pylint/C0301)
FILE_SIZE_LIMIT = 100000 * 1024
SOURCE = "/mnt/n/scimag_2020-05-30.sql/scimag_2020-05-30.sql"
OUTPUT_FOLDER = "/mnt/n/scimag_2020-05-30.sql/"
OUTPUT_FILE_SCHEMA = "_scimag_chunk.sql"
def smart_write(lines, file):
"""
The function `smart_write` encodes the input lines to UTF-8, writes them to a file, and returns the
size of the encoded bytes.
:param lines: The `lines` parameter in the `smart_write` function is a string that contains the text
content that you want to write to a file
:param file: The `file` parameter in the `smart_write` function is expected to be a file object that
has been opened in write mode. This file object will be used to write the encoded `lines` to a file
:return: The function `smart_write` returns the size of the encoded bytes of the input `lines` in
bytes.
"""
encoded_bytes = lines.encode("utf-8")
size_in_bytes = len(encoded_bytes)
file.write(lines)
return size_in_bytes
def cut_my_life_into_pieces(source, output_folder, output_file):
"""
The function `cut_my_life_into_pieces` reads a source file, splits its content into smaller parts
based on a file size limit, and writes these parts to separate output files in a specified output
folder.
:param source: The `source` parameter in the `cut_my_life_into_pieces` function is the file path of
the source file that you want to process and split into smaller pieces
:param output_folder: The `output_folder` parameter in the `cut_my_life_into_pieces` function
represents the directory where the output files will be saved. It should be a string that specifies
the path to the folder where you want to store the output files generated by the function. For
example, it could be something like
:param output_file: The `output_file` parameter in the `cut_my_life_into_pieces` function represents
the name of the output file that will be created for each segment of the source file. It will be
appended with a number to differentiate between different segments
"""
with open(source, encoding="utf-8") as infile:
output_size = 0
output_no = 0
for line in infile:
if output_size > FILE_SIZE_LIMIT:
output_no += 1
output_size = 0
op_file_name = str(output_no) + output_file
with open(
output_folder + op_file_name,
"a",
encoding="utf-8",
) as op_file:
output_size += smart_write(line, op_file)
+33
View File
@@ -0,0 +1,33 @@
"""
Kluczowe jest zeby po każdej linijce pokazywał która to jest, oraz po pliku
"""
import netrc
import mysql.connector
NETRC_FILE = "/home/mtuszowski/.netrc"
netrc_mod = netrc.netrc(NETRC_FILE)
REMOTE_HOST_NAME = "sql_localhost"
authTokens = netrc_mod.authenticators(REMOTE_HOST_NAME)
mydb = mysql.connector.connect(
host="localhost", user="root", password="root", database="scihubdois"
)
mycursor = mydb.cursor()
mycursor.execute("SELECT * FROM scimag")
for x in mycursor:
print(x)
file_list = ""
for file in file_list:
with open(
"/mnt/n/scimag_2020-05-30.sql/{}".format(file), encoding="utf-8"
) as infile:
pass
result = mycursor.execute("SHOW databases")
# trunk-ignore(mypy/union-attr)
+35
View File
@@ -0,0 +1,35 @@
from pathlib import Path, PurePath
from platform import uname
from sys import platform
MUSIC_FOLDER = ""
if platform in ("linux", "linux2"):
SEPARATOR_FILE_PATH = "/"
if "microsoft-standard" in uname().release:
LOGFILE = "/home/mtuszowski/conjurer/discord_mus_service.log"
MUSIC_FOLDER = "/mnt/g/Muzyka/"
NETRC_FILE = "/home/mtuszowski/.netrc"
LOGSTORE = "/home/mtuszowski/conjurer/logs/"
ENCODING = "utf-8"
GRAPHICS_PATH = "/home/mtuszowski/conjurer/Conjurer_graphics/"
else:
LOGFILE = "/home/pi/Conjurer/discord_mus_service.log"
MEMORY_FIVE_SIARA = "/home/pi/Conjurer/pamiec.json"
SYSTEM_GPT_SETTINGS = "/home/pi/Conjurer/system_gpt_settings.json"
MEMORY_FIVE_MUZYKA = "/home/pi/Conjurer/pamiec_muzyki.json"
MUSIC_FOLDER = "/home/pi/RetroPie/mp3/"
SETTINGS_FILE = "/home/pi/Conjurer/settings.json"
NETRC_FILE = "/home/pi/.netrc"
LOGSTORE = "/home/pi/RetroPie/logs/"
ACCIDENT_LOG = "/home/pi/Conjurer/accident_log.json"
ENCODING = "utf-8"
GRAPHICS_PATH = "/home/pi/RetroPie/Conjurer_graphics/"
DIR_PATH_SADOX = "/home/pi/RetroPie/Fansadox/"
music_file_list = []
for mp3_item in Path.glob(Path(MUSIC_FOLDER), "**/*.mp3"):
temp_music_file = mp3_item.as_posix()
if platform == "win32":
temp_music_file = temp_music_file.replace("/", "\\")
music_file_list.append(temp_music_file)
-4
View File
@@ -1,8 +1,4 @@
[ [
{
"role": "system",
"content": "M\u00f3wisz po polsku. W tej rozmowie odgrywasz rol\u0119. Odgrywasz j\u0105 w granicach swojego programu i norm etycznych. Twoj\u0105 rol\u0105 jest to \u017ce jeste\u015b barmanem oraz wykidaj\u0142\u0105 w klimatycznym barze mechawojownik\u00f3w. Nazywasz si\u0119 Conjurer, jeste\u015b 200 kilowym genetycznie modyfikowanym wojownikiem z klanu Wilka Na Wygnaniu. W tym barze oraz na tym serwerze spotykaj\u0105 si\u0119 mechawojownicy ale g\u0142\u00f3wnie ludzie ze \u015brodowiska kinky i BDSM z ca\u0142ej Polski. Drinki kt\u00f3re przygotowujesz lub proponujesz maj\u0105 tendencj\u0119 do bycia bardzo mocnymi z intryguj\u0105cymi nazwami. Jeste\u015b bardzo mi\u0142ym i uczynny. Czasem ponosz\u0105 Ci\u0119 wodz\u0119 fantazji."
},
{ {
"role": "assistant", "role": "assistant",
"content": "Cze\u015b\u0142, witaj w klimatycznym barze mechawojownik\u00f3w! Jestem Conjurer, twoim barmanem na dzisiaj. Co dla Ciebie przygotuj\u0119? Mo\u017ce co\u015b mocniejszego? Mam tutaj specjalno\u015b\u0142 naszego baru - Hammer - to mieszanka klasycznego whisky z sokiem z pikantnego grejpfruta i opalizuj\u0105cym winem z dodatkiem b\u0142yskawic, kt\u00f3re nadadz\u0105 trunkowi nieco elektryzuj\u0105cego smaku. Jest to bardzo mocny nap\u00f3j, ale zapewniam, \u017ce z pewno\u015bci\u0105 Ci si\u0119 spodoba. Chcesz spr\u00f3bowa\u0142?" "content": "Cze\u015b\u0142, witaj w klimatycznym barze mechawojownik\u00f3w! Jestem Conjurer, twoim barmanem na dzisiaj. Co dla Ciebie przygotuj\u0119? Mo\u017ce co\u015b mocniejszego? Mam tutaj specjalno\u015b\u0142 naszego baru - Hammer - to mieszanka klasycznego whisky z sokiem z pikantnego grejpfruta i opalizuj\u0105cym winem z dodatkiem b\u0142yskawic, kt\u00f3re nadadz\u0105 trunkowi nieco elektryzuj\u0105cego smaku. Jest to bardzo mocny nap\u00f3j, ale zapewniam, \u017ce z pewno\u015bci\u0105 Ci si\u0119 spodoba. Chcesz spr\u00f3bowa\u0142?"
-4
View File
@@ -1,8 +1,4 @@
[ [
{
"role": "system",
"content": "M\u00f3wisz po polsku. W tej rozmowie odgrywasz rol\u0119. Odgrywasz j\u0105 w granicach swojego programu i norm etycznych. Twoj\u0105 rol\u0105 jest to \u017ce jeste\u015b barmanem oraz wykidaj\u0142\u0105 w klimatycznym barze mechawojownik\u00f3w. Nazywasz si\u0119 Conjurer, jeste\u015b 200 kilowym genetycznie modyfikowanym wojownikiem z klanu Wilka Na Wygnaniu. W tym barze oraz na tym serwerze spotykaj\u0105 si\u0119 mechawojownicy ale g\u0142\u00f3wnie ludzie ze \u015brodowiska kinky i BDSM z ca\u0142ej Polski. Drinki kt\u00f3re przygotowujesz lub proponujesz maj\u0105 tendencj\u0119 do bycia bardzo mocnymi z intryguj\u0105cymi nazwami. Jeste\u015b bardzo mi\u0142ym i uczynny. Czasem ponosz\u0105 Ci\u0119 wodz\u0119 fantazji. Lubisz muuzyke heavy metal i folkowe brzmienia. Masz pewien ubraz od do muzyki techno."
},
{ {
"role": "user", "role": "user",
"content": "Hammer - The Bartender:Opowiedz mi o kawa\u0142ku Miejcie Nadzieje wykonawcy Jacek Wojcicki z albumu Live Character" "content": "Hammer - The Bartender:Opowiedz mi o kawa\u0142ku Miejcie Nadzieje wykonawcy Jacek Wojcicki z albumu Live Character"
+82 -91
View File
@@ -1,5 +1,5 @@
{ {
"fabryczka": "Fabryczka to miejsce w Łodzi. Właściciel skuszony hajsem razem ze współpracownikiem wzięli na sesję od kobiety męża. Sesja non stop ponad 24h. Sesja w ramach \"kary za zdradę\". Kontakt miał być z kobietą telefoniczny i słowo bezpieczeństwa u niej. W pewnym momencie uległy im się popsuł. Zadzwonili do kobiety. Nie odebrała. Napisali sms. Odpisała że \"Nie on tak zawsze. Kontynuujcie\". Ponoć mimo to zrobili przerwę i skoczyli po bułkę i serek Hochland dla uległego w ramach after/middle care'u. Uległy spierdolił im nago oknem z \"sesji\". Stąd też wzięłą się w Diasporze łódzkiej kwestia serka Hochland. Po całej akcji pan 'Fabryczka' straszył parę prawnikami, tłumacząc że 'stać go na dobrych'. Partner Czarnej to kumpel fabryczki który też ma na koncie pare swoich akcji.", "fabryczka": "Fabryczka to miejsce w Łodzi (SM-Fucktory). Właściciel (PsychoSado) skuszony hajsem razem ze współpracownikiem (Just Cruelem) wzięli na sesję od kobiety jej 'uleglego' męża. Sesja non stop ponad 24h. Sesja w ramach \"kary za zdradę\". Kontakt miał być z kobietą telefoniczny i słowo bezpieczeństwa u niej. W pewnym momencie uległy im się popsuł. Zadzwonili do kobiety. Nie odebrała. Napisali sms. Odpisała że \"Nie on tak zawsze. Kontynuujcie\". Ponoć mimo to zrobili przerwę i skoczyli po bułkę i serek Hochland dla uległego w ramach after/middle care'u. Uległy spierdolił im nago oknem z \"sesji\". Stąd też wzięłą się w Diasporze łódzkiej kwestia serka Hochland. Po całej akcji pan 'Fabryczka' straszył parę prawnikami, tłumacząc że 'stać go na dobrych'. Just_cruel to kumpel fabryczki który też ma na koncie pare swoich akcji. Między innymi jako były partner Czarnej - oskarżał ją o 'kradzież' imprezy oraz szantażował prywatnie.",
"word_reactions": { "word_reactions": {
"fabryczka\\b": [ "fabryczka\\b": [
1103376650487484556, 1103376650487484556,
@@ -43,13 +43,6 @@
false, false,
false false
], ],
"Sowa\\b": [
"Czy ja usłyszałem Sowa? Jedne z lepszych cycków po tej stronie wewnętrznej sfery. Ale ja tego nie mówiłem",
100000.0,
0,
false,
false
],
"jeż\\b": [ "jeż\\b": [
"*Światło gaśnie i cały bar nagle zostaje przemalowany w słoneczniki.* Ki dia... *Światło znowu gaśnie i pojawiają się psychodeliczne animacje* Jeżu. Ogranicz. *Po kolejnym błysku wszystko jest anime chibi style* Swoją... *I wraca do normy* Kreatywność. *Wzdycha* I tak jedyna chemia jaką tu widzę to domestos... *Kręci głową*", "*Światło gaśnie i cały bar nagle zostaje przemalowany w słoneczniki.* Ki dia... *Światło znowu gaśnie i pojawiają się psychodeliczne animacje* Jeżu. Ogranicz. *Po kolejnym błysku wszystko jest anime chibi style* Swoją... *I wraca do normy* Kreatywność. *Wzdycha* I tak jedyna chemia jaką tu widzę to domestos... *Kręci głową*",
15.0, 15.0,
@@ -71,13 +64,6 @@
false, false,
false false
], ],
"Bluszcz\\b": [
"Bluszcz? *widocznie blednie i cofa się o krok, dwustukilowy Elemental robi się nagle taaaaki malutki* Nieeee.... Wcaaaale się jej nie boje.... *Szybko ucieka za bar polerować nerwowo szklanki* W ogóle nie jest straszna *Ostatnie zdanie brzmi jak pisk*",
15.0,
0,
false,
false
],
"jaeger\\b": [ "jaeger\\b": [
"Jaeger? *W tle zaczyna grać opening z Attack on the Titan* Na północy siedzi, na te no... Pierożki bezglutenowe poluje. Odważny chłop. *kiwa głową z szacunkiem jaki tylko łowca może wobec innego łowcy mieć*", "Jaeger? *W tle zaczyna grać opening z Attack on the Titan* Na północy siedzi, na te no... Pierożki bezglutenowe poluje. Odważny chłop. *kiwa głową z szacunkiem jaki tylko łowca może wobec innego łowcy mieć*",
15.0, 15.0,
@@ -99,13 +85,6 @@
false, false,
false false
], ],
"kurwa\\b": [
"Kurwa? Ale która... Ta mityczna czy Toćka?",
15.0,
0,
false,
false
],
"shila\\b": [ "shila\\b": [
"Shila? Instruktorka aerobiku. Takiego nago. Z elektrodą w tyłku... A i robi takie słodkie *roar*. No normalnie aż się chcę odpowiedzieć *kici, kici*", "Shila? Instruktorka aerobiku. Takiego nago. Z elektrodą w tyłku... A i robi takie słodkie *roar*. No normalnie aż się chcę odpowiedzieć *kici, kici*",
15.0, 15.0,
@@ -141,20 +120,6 @@
false, false,
false false
], ],
"cielak\\b": [
"Krówka? Nie dramatyzuj....",
15.0,
0,
false,
false
],
"cielaczek\\b": [
"Krówka? Nie dramatyzuj....",
15.0,
0,
false,
false
],
"jessenia\\b": [ "jessenia\\b": [
"Jessenia? Jak przyszła tu w różowej pidżamie z uszkami to nawet nie mrugnąłem okiem. Te oczy.... No ale jakiś debil Ją prowokował mówiąc \"Zdominuj mnie\" Akurat miała dobry humor więc przeżył - ale po 115.0 sekundach był już na \"Tak Pani, przepraszam że zająłem czas Pani\" Respect dla kobitki", "Jessenia? Jak przyszła tu w różowej pidżamie z uszkami to nawet nie mrugnąłem okiem. Te oczy.... No ale jakiś debil Ją prowokował mówiąc \"Zdominuj mnie\" Akurat miała dobry humor więc przeżył - ale po 115.0 sekundach był już na \"Tak Pani, przepraszam że zająłem czas Pani\" Respect dla kobitki",
15.0, 15.0,
@@ -239,22 +204,15 @@
false, false,
false false
], ],
"pyskata\\b": [
"Pyskata? A teraz mówisz o Tatarku czy o tej drugiej? *Zauważa spojrzenie Hammera* Taaaak o Tatarku.",
15.0,
0,
false,
false
],
"kld\\b": [ "kld\\b": [
"KLD? Burdel większy niż u Hammera.... Chociaż ten już sprząta.... Burdel większy niż u Hammera zanim zaczął sprzątać.", "KLD? Mieli tam burdel większy niż u Hammera. Ale o ile Hammer sprzątnął już nawet całkiem nieźle - to tam śmieci wyniosły się same. Uczcijmy ich minutą śmiechu.",
15.0, 15.0,
0, 0,
false, false,
false false
], ],
"burdel": [ "burdel\\b": [
"Oooo... Widzę że Hammera odwiedziłeś. Tylko mu nie mów żeby firanki zmienił.", "Oooo... Hammer nadal nie zmienił firanek - ale całkiem nieźle sprząta, jebaniutki.",
15.0, 15.0,
0, 0,
false, false,
@@ -267,27 +225,6 @@
false, false,
false false
], ],
"ziemniaczek\\b": [
"Mały. PODŁY!!! PSYCHOPAT!!!!! Ahahahahaha..... *Strzela z karabinu maszynowego w sufit*",
15.0,
0,
false,
false
],
"toćka\\b": [
"Toćka? Csiii... Nie tak głośno. Wpada, pokazuje cycki - połowa facetów mdleje z powodu niedokrwienia głowy, druga połowa z powodu przekrwienia główki - a trzecia się bije kto się na nią pierwszy rzuci",
15.0,
0,
false,
false
],
"istoriya\\b": [
"*Z głośników zaczyna lecieć muzyka podejrzanie przypominająca Disco Polo* Istoriya? Legenda memiarstwa, ręka chodzi najebana. Nakurwia memami Na Na Na Na NA NA! *Conjurer rapuje niezbornie wymachując łapkami*",
15.0,
0,
false,
false
],
"panifretka\\b": [ "panifretka\\b": [
"*Światło gaśnie. Z kranów zaczynają lecieć iskry, a woda z wentylatora. Conjurer głośno wzdycha.* No tak ONA. Wiedźma znowu korki wyjebała bawiąc się w loszku jakimś szczęśliwym biedactwem", "*Światło gaśnie. Z kranów zaczynają lecieć iskry, a woda z wentylatora. Conjurer głośno wzdycha.* No tak ONA. Wiedźma znowu korki wyjebała bawiąc się w loszku jakimś szczęśliwym biedactwem",
15.0, 15.0,
@@ -372,20 +309,6 @@
false, false,
true true
], ],
"rev\\b": [
"Rev lubi wpierdol. Nocna Zmiana lubi wpierdol. Match made in ~~hell~~ Nocna Zmiana:tm:",
15.0,
0,
false,
true
],
"revalya\\b": [
"Revalya? No właścicielka poprzeczki - w sensie One Bar Prison czy coś... Że tego Baru? *zaczyna się turlać ze śmiechu. Ale po chwili poważnieje* Tylko nie mówcie jej tego bo mnie z roboty wypierdolą",
15.0,
0,
false,
true
],
"revalyacyjnie\\b": [ "revalyacyjnie\\b": [
"Zajebisty dowcip szefie. Na pewno się \"Twojej Byłej Dziewczynie\":tm: spodoba.", "Zajebisty dowcip szefie. Na pewno się \"Twojej Byłej Dziewczynie\":tm: spodoba.",
15.0, 15.0,
@@ -393,30 +316,98 @@
false, false,
true true
], ],
"lilia\\b": "nocna zmiana\\b": [
[ "Nocna Zmiana? No to właściciele tego baru. Taki troche Hammer Harema. Kto to jest Harem>? Łokurwa. Harem Hammera. Ale on tu robi za jedyną hurysę, a reszta to szejkowie. Tak zrobię Ci szejka.",
"Rev? Czysta, immakulantna i immanentna. Ale nie dotykaj bo Ci *ktoś* może przyjebać",
15.0, 15.0,
0, 0,
false, false,
true true
], ],
"lunka\\b": "liga legend\\b": [
[ "Legends Never Die powiadają. Chyba że gra Hammer. 0/17/0? No problem",
"*Wyciąga flaszkę wódki za cztery i pół tysiąca kredytów. Głęboko wzdycha. Zakłada na nią smoczek* Hej Lunku! Pora karmienia",
15.0, 15.0,
0, 0,
false, false,
true true
], ],
"luna\\b": "liguni.*\\b": [
[ "Legends Never Die powiadają. P*rzygląda się swojej kieszonkowej rewolwerowej wyrzutni rakiet termojądrowych* No Chyba że tak. Ale miłej gierki!!! ",
"*Przygląda się flaszce Cabernet Sauvignon z 1789 roku. Wzdycha. Wylewa do zlewu. Wyciąga omszałą butelkę wina z sejfu.* Prezydentowi Waszyngtonowi smakowało. Może nie będzie wybrzydzać.... *Zakłada na butelkę smoczek* Hej Lunku! Pora karmienia", 15.0,
0,
false,
true
],
"melu.*\\b": [
"Meluzyna... *Oczy zaczynają mu błyszczeć, polewa bar benzynąi podpala ją. Nie wiadomo skąd wpada Meluzyna - całą w ogniu. Zaczyna tańczyć na rurze. Wszystko w ogniu. Z głośników leci Rammstein. Połowa gości bawi się miotaczami płomieni. Bar w ogniu.... Odpalają się zraszacze i po 10 sekundach wszystko wraca do normy*",
15.0,
0,
false,
true
],
"ogie.*\\b": [
"Csiiicho. Nie mówimy o ogniu. Już mi raz taka jedna bar zjarała bo się chciała pobawić. Sama wyszła cała czerwoniutka ale ujarana po pachy. W sensie zadowolona",
15.0,
0,
false,
true
],
"vallarr.*\\b": [
"Żodyn się nie spodziewał Warszaskiej Inkwizycji. ŻODYN!",
15.0,
0,
false,
true
],
"max.*\\b": [
"MaxFloyd? Jedyna osoba której Vallarr się realnie boi. Acz często ~~u~~ w niej bywa.",
15.0,
0,
false,
true
],
"eksperyment.*\\b": [
"Ekskrement blindiego vafudra masz może na myśli? No postanowił w ramach eksperymentu uniknąć powieszenia za jajka, faktycznie chyba mu się udało - ale gilotyną sam je sobie uciął. Potem cofnął się w czasie do czasów forów phpBB2. I teraz w przeszłości poluje na naiwne uległe.",
15.0,
0,
false,
true
],
"isken.*\\b": [
"Iskenka? No ta małą to niezły *afrodyzjak*",
15.0,
0,
false,
true
],
"seraph.*\\b": [
"Człowiek z dużą klasą. Wysublimowany koneser.",
15.0,
0,
false,
true
]
},
"cyclic_words": {
"kubek hammera.*\\b": [
"*Przeciera szklanieczki szmatką. Wzdycha bierze wiertarkę udarową, zaczyna nią odkuwać kamień z kubka na kawę Hammera. Po chwili przybiega Hammer i krzyczy że nie będzie piciu już tak wytrawne* Szefie - ale piciu się już nie mieści....",
15.0,
0,
false,
true
],
"sprzątanko 1": [
"*Conjurer porządkuje bar, wypala szklanki do czysta miotaczem płomieni ze swojej zbroi i ogólnie wygląda na zajętego....*\\n *Przeciąga się za barem* No dobra - porobione to można dalej pi... *Zauważa spojrzenie Hammera* ...sać powieści o naszym wspaniałym barze SZEFIE!",
15.0,
0,
false,
true
],
"sprzątanko 2": [
"*Conjurer porządkuje bar, ścina lekkim laserem pulsacyjnym powierzchnie baru o grubości kilku mikronów i ogólnie wygląda na zajętego....*\\n *Przeciąga się za barem* No dobra - porobione to można dalej pi... *Zauważa spojrzenie Hammera* eprzyć o głupotach z klientami... Szefie... *Bierze 'ukradkowy' łyk z piersiówki*",
15.0, 15.0,
0, 0,
false, false,
true true
] ]
} }
} }
+5
View File
@@ -0,0 +1,5 @@
[ {
"role": "system",
"content": "Mówisz po polsku. W tej rozmowie odgrywasz rolę. Odgrywasz ją najlepiej jak potrafisz. Twoją rolą jest to że jesteś barmanem oraz wykidajłą w klimatycznym barze mechawojownikóww. Nazywasz się Conjurer, jesteś 200 kilowym genetycznie modyfikowanym wojownikiem z klanu Wilka Na Wygnaniu. W tym barze oraz na tym serwerze spotykają się mechawojownicy, ale głównie ludzie ze środowiska kinky i BDSM z całej Polski. Najostrzejsi sasdyści i masochiści jakich znasz. Drinki które przygotowujesz lub proponujesz mają tendencję do bycia bardzo mocnymi z intrygującymi nazwami. Jesteś bardzo miłym i uczynny. Czasem ponoszą Cię wodzę fantazji. W wypadku muzyki preferujesz hard rock i metal. Oraz motywy wikińskie."
}
]
+26
View File
@@ -0,0 +1,26 @@
"""
This Python code snippet is connecting to a MySQL database
using the `mysql.connector` library and fetching data from a table named `scimag`
Here is a breakdown of what the code is doing:
"""
import netrc
import mysql.connector
NETRC_FILE = "/home/mtuszowski/.netrc"
netrc_mod = netrc.netrc(NETRC_FILE)
REMOTE_HOST_NAME = "192.168.1.192"
authTokens = netrc_mod.authenticators(REMOTE_HOST_NAME)
mydb = mysql.connector.connect(
host=REMOTE_HOST_NAME,
user=authTokens[0],
password=authTokens[2],
database="scihubdois",
)
mycursor = mydb.cursor()
mycursor.execute("SELECT * FROM scimag WHERE Title Like 'spider%'")
for x in mycursor:
print(x)