RBoy
(RBoy)
2월 13, 2024, 5:23오후
1
Discourse AI 플러그인을 설치하고 Gemini를 설정한 후, 요약(Summarization), 감정 분석(Sentiment), 관련 주제(Related Topics), AI 검색(AI Search) 및 독성 분석(Toxicity) 모듈을 몇 개 활성화했습니다.
처음에는 잘 작동하여 요약 버튼이 표시되고 콘텐츠가 생성되었습니다.
하지만 감정 분석과 독성 분석 옵션을 활성화하자마자 요약 기능이 작동하지 않게 되었습니다. 즉, 모든 주제에서 요약 버튼이 사라졌습니다. 대시보드의 감정 분석 탭에는 표시할 데이터가 없다고 나와 있습니다.
discourse 로그를 확인하면 다음과 같은 오류가 보입니다:
Message
Job exception: ERROR: must be owner of database discourse
Backtrace
rack-mini-profiler-3.3.0/lib/patches/db/pg.rb:110:in `exec'
rack-mini-profiler-3.3.0/lib/patches/db/pg.rb:110:in `async_exec'
mini_sql-1.5.0/lib/mini_sql/postgres/connection.rb:202:in `run'
mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:38:in `block in run'
mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:34:in `block in with_lock'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
activesupport-7.0.8/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:34:in `with_lock'
mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:38:in `run'
mini_sql-1.5.0/lib/mini_sql/postgres/connection.rb:181:in `exec'
/var/www/discourse/plugins/discourse-ai/lib/embeddings/vector_representations/base.rb:154:in `create_index!'
/var/www/discourse/plugins/discourse-ai/lib/embeddings/vector_representations/base.rb:71:in `block in consider_indexing'
/var/www/discourse/plugins/discourse-ai/lib/embeddings/vector_representations/base.rb:49:in `each'
/var/www/discourse/plugins/discourse-ai/lib/embeddings/vector_representations/base.rb:49:in `consider_indexing'
/var/www/discourse/plugins/discourse-ai/app/jobs/scheduled/embeddings_backfill.rb:38:in `execute'
/var/www/discourse/app/jobs/base.rb:297:in `block (2 levels) in perform'
rails_multisite-5.0.0/lib/rails_multisite/connection_management.rb:82:in `with_connection'
/var/www/discourse/app/jobs/base.rb:284:in `block in perform'
/var/www/discourse/app/jobs/base.rb:280:in `each'
/var/www/discourse/app/jobs/base.rb:280:in `perform'
/var/www/discourse/app/jobs/base.rb:351:in `perform'
mini_scheduler-0.16.0/lib/mini_scheduler/manager.rb:122:in `process_queue'
mini_scheduler-0.16.0/lib/mini_scheduler/manager.rb:70:in `worker_loop'
mini_scheduler-0.16.0/lib/mini_scheduler/manager.rb:59:in `block (2 levels) in ensure_worker_threads'
Falco
(Falco)
이 글을 에 분리
2월 28, 2024, 2:55오후
2
Falco
(Falco)
2월 15, 2024, 5:36오후
3
RBoy
(RBoy)
2월 16, 2024, 2:00오전
4
죄송하지만 이 부분은 전혀 감이 잡히지 않습니다. 저는 이 주제(그리고 다른 AI 모듈 주제들)의 설명에 따라 플러그인을 설치하고, Discourse를 재빌드한 뒤, 관리자 페이지에서 설정하는 절차만 따랐습니다.
사용자 권한 설정에 대한 단계는 보이지 않았습니다. 제가 어떤 단계를 놓친 것일까요, 아니면 설치/빌드 스크립트에서 처리되지 않는 예외적인 상황일까요?
RBoy
(RBoy)
2월 20, 2024, 10:05오후
6
@Falco 이 부분에 대해 의견이 있으신가요?
Falco
(Falco)
2월 28, 2024, 2:58오후
7
자체 호스팅 설치 환경에서 데이터베이스 사용자가 이 설정을 변경할 권한이 없는 것 같습니다. 더 나은 설정 방법은 업스트림에서 추적되고 있으니, 직접 처리하기 전에 해당 수정이 적용될 때까지 조금 기다려 보겠습니다.
opened 03:04AM - 22 Aug 23 UTC
## Use cases
There are cases where a user wants to set a default search value… (e.g. `ivfflat.probes`, `hnsw.ef_search`) value on a per-index basis, for example:
1. Data is partitioned across multiple tables (integer-based partition key, not related to vector) with indexes on each table. This avoids setting the value on a per-query basis
2. User has a single index, but doesn't want to set the search values on a per-query basis
## Proposal
The proposal is to add new index options on the index AMs:
1. `ivfflat`: `default_probes` (default: `NULL`)
1. `hnsw`: `default_ef_search` (default: `NULL`)
PostgreSQL tracks when a [GUC is changed][1]. For this case, we can use the `PGC_S_SESSION` indicator to determine that GUC is changed in the database sessions and therefore we do not need to consult the index option.
The proposal would then use this heuristic:
```
if default_probes/default_ef_search is NULL
use value from `ivfflat.probes`/ `hnsw.ef_search`
else
if `ivfflat.probes`/`hnsw.ef_search` source is PGC_S_SESSION, use value of `ivfflat.probes`/`hnsw.ef_search`
else use value from `default_probes`/`default_ef_search`
```
## Alternatives
With additional work, we could set "smarter" automatic defaults for `ivfflat.probes`/`hnsw.ef_search`, but folks may still want to set their own index-specific defaults based on the above use cases.
Seeking feedback on this proposal.
[1]: https://github.com/postgres/postgres/blob/master/src/include/utils/guc.h#L78-L123
1개의 좋아요
RBoy
(RBoy)
2월 28, 2024, 3:29오후
8
업데이트를 알려주셔서 감사합니다, Falco. 이 기능의 내용이나 영향, 그리고 로그 오류나 특정 AI 기능과 관련이 있는지, 즉 어떤 기능이 작동하지 않을지 알려주시면 어떤 영향을 받을지 예상하고, 문제가 발생할 수 있는 기능을 임시로 비활성화해야 하는지 판단할 수 있을 것 같습니다.
수정: 이 숫자는 데이터베이스의 항목 수를 기준으로 계산되는 것 같습니다. 재빌드 시 이 값을 설정할 수 있는지 궁금합니다. (데이터베이스가 시간이 지남에 따라 증가할 수 있지만, Discourse가 업그레이드될 때마다 런타임 수정이 이루어질 때까지 최적화가 수행됩니다.) 임시 조치로, 런타임에서 변경을 시도하기 전에 SUPERUSER 권한이 있는지 확인하는 것이 좋겠습니다.
1개의 좋아요
Falco
(Falco)
3월 14, 2024, 8:20오후
9
이 문제는 새로운 AI 빠른 검색 기능의 일부로 수정되었습니다
main ← ai-quick-semantic-search
2개의 좋아요
RBoy
(RBoy)
3월 15, 2024, 12:33오전
10
좋아요. 지금 업그레이드를 진행하겠습니다. 이전 프로세스를 시작하기 위해 제가 해야 할 것이 있나요?
1개의 좋아요
Falco
(Falco)
에 닫힘
3월 16, 2024, 11:00오전
11
이 주제는 38시간 후 자동으로 닫혔습니다. 더 이상 새 답글을 작성할 수 없습니다.