groupultra telegram-search on uusi Telegram-käyttäjien chattihistorian hakutyökalu.
Joitakin suosituksia:
- Telegram-ryhmän hallintabotti @CSUBOT: Voi lähettää yksityisviestejä uusille käyttäjille ja lähettää CloudFlaren verkkosivun vahvistuskoodin ryhmään pääsyvalvonnan suorittamiseksi, jolla varmistetaan, että ryhmään pyrkivät käyttäjät ovat todellisia ihmisiä. Ei häiritse muita ryhmän jäseniä.
- Tarkista nykyisen koneen julkinen IP-osoite, kun käytät eri verkkosivustoja, jolla voit havaita välityspalvelimen jakokokoonpanon ja välttää AI-työkalujen tilin eston. Voi tarkistaa käyttäjän IP-osoitteen, kun hän käyttää kiinalaisia verkkosivustoja, kansainvälisesti tunnettuja AI-verkkosivustoja, estettyjä kansainvälisiä verkkosivustoja ja sallittuja kansainvälisiä verkkosivustoja.
Projektin ominaisuudet
Virallisen dokumentaation mukaan Telegram Search tarjoaa seuraavat ydintoiminnot:
- Semanttinen haku: Voi hakea paitsi avainsanoja, myös ymmärtää viestin kontekstin ja merkityksen
- Vektorien täsmäytys: Perustuu OpenAI:n upotusvektoriteknologiaan samankaltaisuushakujen toteuttamiseksi
- Tehokas haku: Tarkempi ja älykkäämpi hakukokemus kuin Telegramin natiivihaku
- Monialustatuki: Tarjoaa verkkokäyttöliittymän ja työpöytäsovelluksen
Epäsuositus
Ensinnäkin luetteloidaan joitain käyttäjien odotusten vastaisia asioita sekä joitain olemassa olevia ongelmia, jotta osa käyttäjistä, joille tämä projekti ei sovi, poistettaisiin. Ja annetaan ehdotuksia muiden kypsien projektien käytöstä.
Tämän projektin ja muiden AI:ta käyttämättömien perinteisten projektien ero on semanttinen haku (ei vain avainsanojen hakeminen, vaan myös viestien kontekstin ja merkityksen ymmärtäminen). Tällä hetkellä kuitenkin useat kokeiluyritykseni, riippumatta siitä, onko hakukentän asetus “Hae sisältöä” valittu, eivät pääsääntöisesti pysty hakemaan kysymyksillä (vain yksi lause onnistui); synonyymihakua ei voi tehdä. Vain tuloksia ja hakua vastaavia viestejä voidaan hakea. En ole varma, onko kyse upotusmallin ongelmasta.
Usein käytettävät frontendin ja backendin käyttöönottokomennot vaativat kääntämisen, mikä on joillekin käyttäjille, jotka ovat tottuneet kieliin, joita ei tarvitse kääntää etukäteen, ja käyttäjille, jotka ovat tottuneet nopeaan kääntämiseen, odotusaika tälle projektille melko pitkä.
Kun frontend avataan käyttöön ja sitten päivitetään jonkin ajan kuluttua, frontendissä näkyy valkoinen näyttö, kuten alla. Joka kerta on käynnistettävä uudelleen, pnpm run dev:frontend
, ja odotettava kääntämistä. Kun se otetaan käyttöön palvelimella, on todellakin hankalaa, että joka kerta kun sitä käytetään tai ennen jokaista kyselyä, on muodostettava yhteys palvelimeen ja käännettävä se uudelleen.

Yhteenvetona edellä mainitut ongelmat tarkoittavat, että groupultra telegram-search Telegram-historiaviestien hakuhankkeena ei ole yhtä hyvä kuin muut kypsät perinteiset hankkeet. Muut hankkeet suositellaan:
落絮 lilydjwg/luoxu: Telegram-käyttäjäbotti kiinalaisten ja japanilaisten ryhmien sisällön indeksointiin. — Telegram-käyttäjäbotti kiinalaisten ja japanilaisten ryhmien sisällön indeksointiin. , jonka on kehittänyt archlinux cn -yhteisön Yiyun, ja projekti on toiminut vakaasti useita vuosia. Katso todellinen vaikutus: Julkiset ryhmäviestien hakusivut . Projektin ominaisuudet:
- Projekti käyttää pääosin Pythonia, eikä kääntämistä tarvitse odottaa. Vaikka jotkin komponentit on käännettävä, se tarvitsee tehdä vain kerran
- Hakumerkkijono ei erota yksinkertaistettua ja perinteistä kiinaa (käyttää OpenCC:tä automaattiseen muuntamiseen)
- Hakumerkkijono tukee joitain hakusyntakseja
- Toiminnassa oleva kulutus on hieman pienempi kuin groupultra/telegram-search
Luoxun ongelmat:
- Asennus ja käyttöönotto voivat olla hieman hankalampia kuin groupultra/telegram-search -projekti. (On kahden projektin todellinen vertailu. Koska otan Luoxun käyttöön Linux arm32 -järjestelmässä, otan Luoxun käyttöön kaikkine riippuvuuksineen täysin käännettynä, mukaan lukien PostgreSQL: Linuxissa PostgreSQL 17.4:n kääntäminen ja asentaminen)
- Oletuskoodi voi indeksoida vain määritystiedostoon kirjoitettuja ryhmien ja kanavien viestejä, tietysti voit muuttaa koodia manuaalisesti
Käyttöönoton edellytykset ja vaatimukset
- Käytettävissä oleva tekoäly, kuten Google Gemini, OpenAI jne.
- Node.js: versio 20.0 tai uudempi
- RAM: vähintään 100 Mt
- Kyky käyttää kansainvälistä Internetiä
Tässä opetusohjelmassa käytetään täysin ilmaista Google Geminiä, online-sovellusliittymä ei kuluta paikallisia laskentaresursseja. Esittelyhakemus: Gemini API KEY -hakemuksen hankkiminen ja käyttö
Olen ottanut sen käyttöön Linux amd64 -kansainvälisellä palvelimella ilman Dockerin käyttöä, muut käyttöjärjestelmäympäristöt ovat vain viitteellisiä
Noudata tätä opetusohjelmaa ja huomaa vertailla sitä viralliseen dokumentaatioon.
Pikaopas
Virallisen dokumentaation mukaan Telegram Searchin perusprosessi on seuraava:
- Asennus ja määritys: Asenna sovellus ja määritä tarvittavat sovellusliittymät
- Telegram-tilin yhdistäminen: Kirjaudu sisään Telegram-tilillesi
- Synkronoi chattihistoria: Valitse haettava chattihistoria synkronoimiseksi
- Aloita haku: Etsi viestejä semanttisella hakutoiminnolla
Asennus ja määritys
Node.js:n asentaminen
Käy Node.js:n virallisella verkkosivustolla ja katso dokumentaatiota asennusta varten. On suositeltavaa käyttää uusinta LTS-versiota, ja suorita asennuksen jälkeen seuraavat kaksi komentoa version vahvistamiseksi:
node -v
v22.16.0
npm --version
10.9.2
Koska projekti käyttää pnpm:ää, asenna se. Virallinen dokumentaatio: Asennus | pnpm , nykyinen todellinen komento:
curl -fsSL https://get.pnpm.io/install.sh | sh -
Ohjeiden mukaan
source /home/opc/.bashrc
PostgreSQL-tietokannan ja pgvector-lisäosan asentaminen
Huomaa, että PostgreSQL ja pgvector-lisäosa on asennettava. Huomaa, että tämä osa voi olla puutteellinen
Huomaa, että CentOS:n kaltaiset redhat-järjestelmät käyttävät näitä asennuskomentoja. Käytön aikana muista viitata muihin online-artikkeleihin ja tekoälyehdotuksiin.
Asenna PostgreSQL:n virallinen YUM-tietovaraston kokoonpanopaketti
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
Valitse versio 13, voit valita uudemman version. Koska PostgreSQL 13 on asennettu aiemmin, tarkka komento ei ole varma. Nyt
Hae YUM-lähteestä pgvectoriin
liittyviä käytettävissä olevia paketteja
sudo yum search pgvector
Asenna
sudo yum install -y pgvector_13
sudo systemctl status postgresql-13
Alusta PostgreSQL 13 -datahakemisto (on suoritettava ensimmäisen asennuksen jälkeen).
sudo /usr/pgsql-13/bin/postgresql-13-setup initdb
Käynnistä PostgreSQL 13 -palvelu uudelleen, jotta muutokset tulevat voimaan.
sudo systemctl restart postgresql-13
Vaihda postgres
-tietokannan pääkäyttäjäksi.
sudo -i -u postgres
Käynnistä PostgreSQL-komentoriviasiakas.
psql
Aseta postgres
-käyttäjän salasana.
ALTER USER postgres WITH PASSWORD 'Salasanasi';
Yhdistä PostgreSQL:ään postgres
-käyttäjänä paikallisen isännän kautta ja anna salasana.
psql -U postgres -h localhost --password
Poistu psql:stä
exit
Palaa sitten alkuperäiselle järjestelmäkäyttäjälle,
exit
Yritä päästä tietokantaan
psql -U postgres -h localhost --password
CREATE DATABASE tg_1;
CREATE EXTENSION IF NOT EXISTS vector;
Projektin määrittäminen ja käynnistäminen
Koska Google Gemini API:lla on nopeusrajoitus, tein pienen muutoksen:
git clone -b rate https://github.com/cjh0613/groupultra-telegram-search.git
Huomaa, että nykyinen rate branch -haara on kokonaan muokattu Github-verkkosivulla, eikä paikallista testausta ole suoritettu.
Nopeusrajoitusmuutos, joka toimii onnistuneesti koneellani, perustuu tähän versioon: v1.0.0-beta.10, commit: c60ac6416dcac6543d2623c49179681ed859e26f, joka varmistaa vain, että koodi toimii ilman virheitä. Jos koodisi ei toimi, yritä palauttaa virallisen projektin muutos tämän commitin jälkeen.
Jos käyttämälläsi API:lla ei ole nopeusrajoitusta, voit käyttää suoraan virallista arkistoa
git clone https://github.com/groupultra/telegram-search.git
Kopioi määritystiedosto config\config.example.yaml
samaan hakemistoon config\config.yaml
-tiedostona.
Muokkaa määritystiedostoa suoraan seuraavan muodon mukaisesti ja viittaa muihin osiin oletusmääritystiedoston ohjeisiin.
Telegram API -sovellus vaatii laadukkaan IP-osoitteen, jos et voi hakea sitä, käytä tekijän osoitetta ilman muokkauksia. Tätä käytetään kolmannen osapuolen asiakkaille, ei Telegram-boteille.
database:
# Database type: postgres, pglite
type: postgres
# PostgreSQL configuration (used when type: postgres)
# Can use URL or separate field configuration
# url: postgres://postgres:postgres@localhost:5432/tg_search
host: localhost
port: 5432
user: postgres
password: 'Salasanasi'
database: tg_1
api:
embedding:
# Embedding provider (openai or ollama) # Älä muuta tätä Geminiksi
provider: openai
# Embedding model
model: models/text-embedding-004
# gemini-embedding-exp-03-07
# API key for provider
apiKey: <Hankkimasi Gemini API KEY>
# Gemini embedding-001 oletustuloste on 3072-ulotteinen, ulottuvuutta ei voi mukauttaa
dimension: 768
# Optional, for custom API providers
apiBase: 'https://generativelanguage.googleapis.com/v1beta/openai/'
# Käynnistä backend-palvelu
pnpm run dev:server
# Käynnistä frontend-liittymä toisessa pääteikkunassa
pnpm run dev:frontend
Tarkista, voiko frontendin käyttää onnistuneesti:
curl http://localhost:3333/
Jos se on paikallinen kone, avaa selain ja käytä sovellusta osoitteessa http://localhost:3333
Jos kyseessä on etälaite, avaa vain frontendin portti pääsyä varten. Mutta älä voi paljastaa sitä suoraan julkisessa verkossa, muuten kuka tahansa voi manipuloida Telegram-tiliäsi. Sinun on määritettävä pääsyoikeudet itse, ja ratkaisuja on monia.
Lisäksi verkkotunnusyhteyden saamiseksi voi olla tarpeen muokata apps\frontend\vite.config.ts
-tiedostoa lisäämällä
allowedHosts: ['Käyttämäsi verkkotunnus']
Katso muuta sisältöä virallisesta dokumentaatiosta.
Muut versiot tästä verkkosivusta
Tästä artikkelista on saatavilla useita kieliversioita.
Jos haluat kommentoida, käy seuraavilla verkkosivuilla:
Nämä verkkosivut tukevat vain selaamista, niihin ei voi kommentoida tai jättää viestejä, mutta ne tarjoavat enemmän kielivaihtoehtoja ja latausajat ovat lyhyemmät:
ZH EN ZH-TW JA RU KO CS ES AR FR PT DE TR IT NL SV DA FI PL UK HE RO HU EL HR TH HI BN ID SW VI NO