|
1 | 1 | import 'package:anx_reader/config/shared_preference_provider.dart';
|
| 2 | +import 'package:anx_reader/providers/ai_cache_count.dart'; |
2 | 3 | import 'package:anx_reader/service/ai/ai_cache.dart';
|
3 | 4 | import 'package:anx_reader/service/ai/ai_dio.dart';
|
4 | 5 | import 'package:anx_reader/service/ai/claude.dart';
|
5 | 6 | import 'package:anx_reader/service/ai/deepseek.dart';
|
6 | 7 | import 'package:anx_reader/service/ai/gemini.dart';
|
7 | 8 | import 'package:anx_reader/service/ai/openai.dart';
|
8 | 9 | import 'package:anx_reader/utils/log/common.dart';
|
| 10 | +import 'package:flutter_riverpod/flutter_riverpod.dart'; |
9 | 11 |
|
10 | 12 | Stream<String> aiGenerateStream(
|
| 13 | + WidgetRef ref, |
11 | 14 | String prompt, {
|
12 | 15 | String? identifier,
|
13 | 16 | Map<String, String>? config,
|
@@ -52,16 +55,18 @@ Stream<String> aiGenerateStream(
|
52 | 55 | }
|
53 | 56 | AiDio.instance.cancel();
|
54 | 57 | await AiCache.setAiCache(hash, buffer, identifier);
|
| 58 | + ref.read(aiCacheCountProvider.notifier).refresh(); |
55 | 59 | }
|
56 |
| - |
| 60 | + |
57 | 61 | Future<String> aiGenerate(
|
| 62 | + WidgetRef ref, |
58 | 63 | String prompt, {
|
59 | 64 | String? identifier,
|
60 | 65 | Map<String, String>? config,
|
61 | 66 | }) async {
|
62 | 67 | final buffer = StringBuffer();
|
63 | 68 | await for (final chunk
|
64 |
| - in aiGenerateStream(prompt, identifier: identifier, config: config)) { |
| 69 | + in aiGenerateStream(ref, prompt, identifier: identifier, config: config)) { |
65 | 70 | buffer.write(chunk);
|
66 | 71 | }
|
67 | 72 | return buffer.toString();
|
|
0 commit comments