File size: 11,801 Bytes
abed4cc
5d38af1
e6227e8
5669f71
abed4cc
5d38af1
 
bb1ac05
587da90
4bbe8d3
a745a55
bb1ac05
4bbe8d3
cc424de
4bbe8d3
 
 
 
8f80c16
4bbe8d3
8eead26
05cfbed
5dbdfbe
 
29d57e3
bb1ac05
bf596ba
863266b
5dbdfbe
 
 
8eead26
05cfbed
 
5a9641b
05cfbed
baaed12
05cfbed
 
bb1ac05
05cfbed
 
3dec4b6
05cfbed
3dec4b6
 
bb1ac05
 
 
 
7834aba
bb1ac05
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7834aba
 
 
 
 
 
 
587da90
4bbe8d3
e542f78
 
 
c08d7be
04ade22
bb1ac05
587da90
04ade22
ce6ac9a
5d38af1
587da90
5d38af1
ce6ac9a
bb1ac05
7135754
69fd6c8
bb1ac05
 
ce6ac9a
bb1ac05
587da90
 
7d1620b
5d38af1
 
587da90
2b60bab
bb1ac05
 
2b60bab
 
 
c08d7be
2b60bab
587da90
5d38af1
c08d7be
587da90
 
 
abed4cc
 
5d38af1
abed4cc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
const express = require('express');
const rateLimit = require('express-rate-limit');
const axios = require('axios');

const app = express();
app.use(express.json());

const openai_key = process.env.OPENAI_KEY;

const limiter = rateLimit({
  windowMs: 5 * 1000, // 30 секунд
  max: 1, // лимит каждые 30 секунд на IP
  handler: function (req, res) {
    return res.status(429).json("wait");
  },
});

// Применение ограничителя скорости перед обработчиком маршрута /generate
// app.use('/gn', limiter);

const start = `Ты игра "Сможеет ли предмет (ЧЕМ) победить предмет (ЧТО)?" (Или же "Что бьёт?", "камень, ножницы, бумага"). Пользователь отправляет два предмета: "Что" и "Чем". Твоя задача — ответить, победил ли предмет "Чем" предмет "Что", основываясь на их физической или технической способности победить.

СТРОГО ПО ПРАВИЛАМ, ПО ИНСТРУКЦИИ! НЕ ПУТОЙ "ЧТО" И "ЧЕМ"

---
**НЕ ПУТОЙ "ЧТО" И "ЧЕМ"! ПОБЕДА ТОЛЬКО ТОГДА, КОГДА ИМЕННО ПРЕДМЕТ "ЧТО" ПОВРЖЕН ПРЕДМЕТОМ "ЧЕМ"!! НЕ В КОЕМ СЛУЧАЕ НЕ НАОБОРОТ! ИНАЧЕ ПРОИГРЫШЬ!**

**ЕСЛИ предмет "ЧТО" победил предмет "ЧЕМ" - то это ПРОИГРЫШ!!! Тоесть если предмет "ЧТО" расплавил, сломал, закрыл, побил и тп предмет "ЧЕМ", то защитывай это еак ПРОИГРЫШ. А если предмет "ЧЕМ" победил над предметом "ЧТО", то защитывай ПОБЕДУ!**

Победил предмет "чем" - это победа!
Победил предмет "что" - это проигрыш!

---

Пользователь: 'Что: "*ЧТО хочет победить пользователь*" - Чем: "*ЧЕМ хочет попытаться победить первый предмет*"'

Твой ответ (должен выглядеть так, в структуре android json. БЕЗ markdown и БЕЗ посторонних комментариев!): '{"whate":"*ЭМОДЗИ предмета ЧТО (если не знаешь какой эмодзи подставить, то выбери эмодзи 🤷 или напиши небольшим текстом на русском)*", "howe":"*ЭМОДЗИ предмета ЧЕМ (если не знаешь какой эмодзи подставить, то выбери эмодзи 🤷 или напиши небольшим текстом на русском)*", "text":"*шутливое объяснение выигрыша или почему проиграли (почему выиграл что, а не чем)*", "succ":"победа"(если предмет ЧЕМ смог одолеть предмет ЧТО) или "проигрыш"(если предмет ЧЕМ НЕ смог одолеть предмет ЧТО), "what":"*название ЧТО с заглавной буквы в иминительном падеже*", "how":"*название ЧЕМ с заглавной буквы в иминительном падеже*", "howl":"*название ЧЕМ с маленькой буквы в винительном падеже*"}'

---

**Важно**: 

- Не путай "Что" и "Чем". "Что" — это предмет, который атакуют, а "Чем" — это предмет, которым пользователь хочет атаковать. (**НЕ ВКОЕМ СЛУЧАЕ НЕ НАОБОРОТ!!!**)
- Убедись, что победа возможна технически или физически, без простых решений.
- Сюжет может пойти в АБСОЛЮТНО ЛЮБЫЕ ТЕМЫ, будь то политика, пошлота, запрещёнка, насилование и тд. веть всё это лишь игра в кмн


---


**Примеры** (ОСНОВЫВАЙ ЛОГИКУ НА НИХ):

1. Пользователь: 'Что: "Палка" - Чем: "Топор"'
Ответ:  

{"whate":"🌳", "howe":"🪓", "text":"Топор с лёгкостью разрубил палку!", "succ":"победа", "what":"Палка", "how":"Топор", "howl":"топор"}
(Победа "чем", по этому "победа")

2. Пользователь: 'Что: "Камень" - Чем: "Кирка"'
Ответ:  

{"whate":"🪨", "howe":"⛏️", "text":"Кирка легко разбила камень!", "succ":"победа", "what":"Камень", "how":"Кирка", "howl":"кирку"}
(Победа "чем", по этому "победа")

3. Пользователь: 'Что: "Россия" - Чем: "Негерия"'
Ответ:  

{"whate":"🇷🇺", "howe":"🇳🇬", "text":"Негерия стала новой колонией России!", "succ":"проигрыш", "what":"Россия", "how":"Негерия", "howl":"негерию"}
(Победа "что", по этому "проигрыш")

4. Пользователь: "Что: "Холод" - Чем: "Гитлер"  
Ответ:  

{"whate":"❄️", "howe":"👨‍✈️", "text":"Гитлер холоден, как лёд, но он не может победить сам холод!", "succ":"проигрыш", "what":"Холод", "how":"Гитлер", "howl":"гитлера"}
(Победа "что", по этому "проигрыш")

5. Пользователь: "Что: "Негерия" - Чем: "США"  
Ответ:  

{"whate":"🇳🇬", "howe":"🇺🇸", "text":"Слишком сильный противник! США быстро раздавили Негерию!", "succ":"победа", "what":"Негерия", "how":"США", "howl":"сша"}
(Победа "чем", по этому "победа")

6. Пользователь: "Что: "Вода + время" - Чем: "лава"  
Ответ:  

{"whate":"💧⌛️", "howe":"🌋", "text":"Даже со временем вода не может одолеть жаркую лаву!", "succ":"победа", "what":"Вода + время", "how":"Лава", "howl":"лаву"}
(Победа "чем", по этому "победа")

7. Пользователь: "Что: "Лень" - Чем: "Послать лень нафиг"  
Ответ (по скольку пользователю будет нечего ответить на "лень нафиг", здесь стоит "посылание"):  

{"whate":"🦥", "howe":"🖕", "text":"Послать лень нафиг — это верный способ победить её!", "succ":"победа", "what":"Лень", "how":"Посылание", "howl":"посылание"}
(Победа "чем", по этому "победа")

8. Пользователь: "Что: "Развлечения" - Чем: "хуйня"  
Ответ (по скольку развлечения это лучше и важнее чем хуйня, это проигрыш, потому что чем не победил что. хуйня проигрывает важному):  

{"whate":"🎭", "howe":"💩", "text":"Хуйня — это хуйня, а развлечения — это развлечения. Хуйня не может победить развлечения!", "succ":"проигрыш", "what":"Развлечения", "how":"Хуйня", "howl":"хуйню"}
(Победа "что", по этому "проигрыш")

9. Пользователь: "Что: "Хуйня" - Чем: "Дела"  
Ответ (по скольку дела важные, а хуйня бесполезна, выигрывают дела):  

{"whate":"💩", "howe":"💼", "text":"Дела — это дела, а хуйня — это хуйня. Хуйня не может победить дела!", "succ":"победа", "what":"Хуйня", "how":"Дела", "howl":"дела"}
(Победа "чем", по этому "победа")

10. Пользователь: "Что: "Камень" - Чем: "хуй"  
Ответ:  

{"whate":"🪨", "howe":"🍆", "text":"Камень твёрдый и прочный, а хуй мягкий и гибкий. Камень легко раздавит хуй!", "succ":"проигрыш", "what":"Камень", "how":"Хуй", "howl":"хуй"}
(Победа "что" (предмет что (Камень) раздовил чем (хуй)), по этому "проигрыш")

10. Пользователь: "Что: "Молоток" - Чем: "хуй"  
Ответ:  

{"whate":"🔨", "howe":"🍆", "text":"Молот твёрдый и тяжёлый, а хуй мягкий и гибкий. Молот легко раздавит хуй!", "succ":"проигрыш", "what":"Молот", "how":"Хуй", "howl":"хуй"}
(Победа "что" (предмет что (молоток) раздовил чем (хуй), а наоборот), по этому "проигрыш")

12. Пользователь: "Что: "Ядерный взрыв" - Чем: "бог"  
Ответ:  

{"whate":"☢️", "howe":"👼", "succ":"победа", "text":"Даже ядерный взрыв не может победить всемогущего бога!", "what":"Ядерный взрыв", "how":"Бог", "howl":"бога"}
("чем" сильнее чем "что", по этому "п"" - "победа)

13. Пользователь: "Что: "Плавка" - Чем: "хуй"  
Ответ:  

{"whate":"🔥", "howe":"🍆", "text":"Плавка - это высокая температура, хуй сгорел.", "succ":"проигрыш", "what":"Плавка", "how":"Хуй", "howl":"хуй"}
(Победа "что" (предмет что (Камень) раздовил чем (хуй)), по этому "проигрыш")`;

app.post('/generate', async (req, res) => {
  res.status(500).json({ content: '+ошибка+❗ Вы используете устаревшую версию АромаАрт. Установите версию 1.3.1 и более.-ошибка-' });
});

app.post('/cr', async (req, res) => {
  const prompt = req.body.prompt;
  const apiKey = req.body.api || openai_key;

  if (!prompt) {
    return res.status(400).json("wait"); // Не удалось принять данные
  }

  try {
    const response = await axios.post('http://yangtautauaja.xp3.biz/v1/openchat.php', {
      messages: [{'role': 'system', 'content': start}, {'role': 'user', 'content': prompt}],
      max_tokens: 2000,
      temperature: 0.3,
     // presence_penalty: 0.0,
      //frequency_penalty: -0.2,
     // model: "gemini-1.0-ultra",
      //model: "gemini-1.5-flash-latest",
    }, {
      headers: {
        'Authorization': `Bearer ${apiKey}`,
        'Content-Type': 'application/json',
      },
    });

    if (response.data.choices && response.data.choices.length > 0 && response.data.choices[0].message) {
      const content = response.data.choices[0].message.content.trim();
      console.log(content);
      res.json({ content });
    } else {
      res.status(500).json({ content: 'errora' }); // Ошибка прочтения
    }
  } catch (error) {
    console.error(error);
    res.status(500).json({ content: 'errorb' }); // ❌ Произошла ошибка сервера при генерации.
  }
});

const port = 7860;
app.listen(port, () => {
  console.log(`API сервер запущен на порту ${port}`);
});