Jump to content
Microsoft Windows Bulletin Board

Windows Server

Active Members
  • Posts

    5710
  • Joined

  • Last visited

Everything posted by Windows Server

  1. With large number of Blobs in Storage Account, the manual cleanup from the Portal is more complicated and time consuming, as it's per set of 10'000. This script is simple and and can be executed in background to clean all items from a defined Blob Container. You have to specify the Storage Account connection string and the blob container name. [string]$myConnectionString = "DefaultEndpointsProtocol=https;AccountName=YourStorageAccountName;AccountKey=YourKeyFromStorageAccountConnectionString;EndpointSuffix=core.windows.net" [string]$ContainerName = "YourBlobContainerName" [int]$blobCountAfter = 0 [int]$blobCountBefore = 0 $context = New-AzStorageContext -ConnectionString $myConnectionString $blobCountBefore = (Get-AzStorageBlob -Container $ContainerName -Context $context).Count Write-Host "Total number of blobs in the container Before deletion: $blobCount" -ForegroundColor Yellow Get-AzStorageBlob -Container $ContainerName -Context $context | ForEach-Object { $_ | Remove-AzureStorageBlob # or: Remove-AzureStorageBlob -ICloudBlob $_.ICloudBlob -Context $ctx } $blobCountAfter = (Get-AzStorageBlob -Container $ContainerName -Context $context).Count Write-Host "Total number of blobs in the container After deletion : $blobCount" -ForegroundColor GreenIt was used for large blob storage container with more than 5 millions of blob items. Sources: https://learn.microsoft.com/en-us/powershell/module/az.storage/new-azstoragecontext?view=azps-13.0.0#examples https://learn.microsoft.com/en-us/answers/questions/1637785/what-is-the-easiest-way-to-find-the-total-number-o https://stackoverflow.com/questions/57119087/powershell-remove-all-blobs-in-a-container Fab View the full article
  2. Hello everyone! I recently encountered a small problem and hope to get your help. I have a Dell Windows 11 laptop with some video files stored in it, all of which are my favorite music videos. Now I want to convert videos to MP3 format so that I can listen to them on my phone at any time. However, I am a little worried that the sound quality will be lost after the conversion, especially the treble and some details. I don’t want the music to sound "fuzzy" or "hollow". I have tried some online conversion tools before, and the sound quality has indeed deteriorated. The bass part is particularly bad and it is simply unlistenable. So, I would like to ask, is there any video to mp3 conversion method or software that does not lose the sound quality? It would be even better if it can be converted in batches! Thank you for your suggestions! View the full article
  3. Hi,This is something I've never came across before. I have a Windows Server 2019 VM with 2 hard drives. The system drive has duplicated with the name ending copyforscan.vhdx. I've no idea why or how to remove it. Is it safe to just delete it? I've searched for it and had zero results come back.Any advice would be appreciated. This isn't affecting the VM.View the full article
  4. In January 2025, Microsoft will introduce resizable Teams windows for the Windows and Mac desktop clients. This is a fundamental change to the client experience that will affect how end users interact with Teams. In a nutshell, users can resize panes like the chat list or meeting stage to a minimum of 360 pixels, which isn't a lot. On the other hand, you can zoom a Teams window to 400%, which is definitely a lot. https://office365itpros.com/2024/12/16/resizable-teams-windows/ View the full article
  5. Hey Guys, When I go to the Settings App -> System -> Graphics the app crashes and it closes. I was able to get the error log in the "Event Viewer", but I have no idea where to go from here. View the full article
  6. Hi,I've been trying for a couple of days now, to install the above windows update, but it always takes the same error 0x800f081fI have tried different solutions:1) net stop wuauserv net stop cryptSvc net stop bits net stop msiserver ren C:\Windows\SoftwareDistribution SoftwareDistribution.old ren C:\Windows\System32\catroot2 catroot2.old net start wuauserv net start cryptSvc net start bits net start msiserver2)DISM /Online /Cleanup-Image /StartComponentCleanup DISM /Online /Cleanup-Image /RestoreHealth sfc /scannow3) Troubleshooter detect an issue in windows updates and it resolved,Issues founView the full article
  7. .NET is the free, open-source, cross-platform framework for building modern apps and powerful cloud services. Enter the world of .NET — Microsoft’s cross-platform framework that serves as the backbone for a spectrum of powerful application development technologies. In this journey through the Microsoft ecosystem, we’ll explore the unique features of WinForms, WPF, WinUI, .NET MAUI, Blazor and ASP.NET Core APIs. Before we dive into the details of each technology, it’s important to note that the information here is gathered from trusted sources like Microsoft’s official Learn blogs, the .NET official website, and other reputable sources. Microsoft’s commitment to transparent and detailed documentation ensures that you’re getting accurate insights. WinForms Windows Forms is a UI framework for building Windows desktop apps. It provides one of the most productive ways to create desktop apps based on the visual designer provided in Visual Studio. Functionality such as drag-and-drop placement of visual controls makes it easy to build desktop apps. With Windows Forms, you develop graphically rich apps that are easy to deploy, update, and work while offline or while connected to the internet. Windows Forms apps can access the local hardware and file system of the computer where the app is running. A demonstration of the user interface in a WinForms application. To learn how to create a Windows Forms app, see Tutorial: Create a new WinForms app. Windows Presentation Foundation (WPF) A UI framework that is resolution-independent and uses a vector-based rendering engine, built to take advantage of modern graphics hardware. WPF provides a comprehensive set of application-development features that include Extensible Application Markup Language (XAML), controls, data binding, layout, 2D and 3D graphics, animation, styles, templates, documents, media, text, and typography. WPF is part of .NET, so you can build applications that incorporate other elements of the .NET API. WPF empowers the creation of a user-friendly interface with its design capabilities. If you want to create a skinned user interface, dynamically load some areas of the UI components from a web service, bind to XML or want to develop a desktop application which has the web-like navigation style, then WPF is a great choice. To learn how to create a WPF app, see Tutorial: Create a new WPF app. Windows UI Library (WinUI) The Windows UI Library (WinUI) is a native user experience (UX) framework for both Windows desktop and UWP applications. By incorporating the Fluent Design System into all experiences, controls, and styles, WinUI provides consistent, intuitive, and accessible experiences using the latest user interface (UI) patterns. With support for both desktop and UWP apps, you can build with WinUI from the ground up, or gradually migrate your existing MFC, WinForms, or WPF apps using familiar languages such as C++, C#, Visual Basic, and JavaScript (using React Native for Windows). At this time, there are two generations of the Windows UI Library (WinUI): WinUI 2 for UWP and WinUI 3 in the Windows App SDK. While both can be used in production-ready apps on Windows 10 and later, each have different development targets. .NET WAUI .NET Multi-platform App UI (MAUI) is an open-source, cross-platform framework for building Android, iOS, macOS, and Windows applications that leverage the native UI and services of each platform from a single .NET code base. Because .NET MAUI favors platform native experiences, it uses WinUI 3 and the Windows App SDK so apps get the latest user experience on Windows. This gives your apps access to everything you get with WinUI 3 plus the ability to reach to other platforms. With .NET MAUI, you can craft a desktop experience with the feel of the web. .NET MAUI for Windows is a great choice if: You want to share as much .NET code as possible across mobile and desktop applications. You want to ship your application beyond Windows to other desktop and mobile targets with native platform experiences. You want to use C# and/or XAML for building cross-platform apps. You’re using Blazor for web development and wish to include all or part of that in a mobile or desktop application. For more information about .NET MAUI visit the link. Blazor Blazor is a web framework that is part of the ASP.NET Core framework. Blazor enables you to create progressive web apps using C#, having significantly less reliance on JavaScript that was necessary in previous versions of ASP.NET. This model is intended to make Blazor appealing to current C# developers, since they can focus less on JavaScript and write more in C# for full-stack development. In Blazor, both the server-side code (APIs, models, etc.) and the client are written in C#. This enables Blazor developers to do full-stack development all in .NET, though it’s also possible to write JavaScript if desired. Blazor Tutorials: Build your first web app with ASP.NET Core using Blazor. ASP.NET Core APIs In the realm of backend development, ASP.NET Core APIs take the spotlight. These APIs provide a robust foundation for building scalable and high-performance backend services, supporting modern application architectures such as microservices. With ASP.NET you use the same framework and patterns to build both web pages and services, side-by-side in the same project. Conclusion From WinForms to .NET MAUI, we’ve explored Microsoft’s tech universe. Each tool adds a unique touch to the toolkit. Whether you’re into desktop apps, web experiences, or robust backends, Microsoft’s ecosystem has you covered. But it doesn’t end here. Microsoft keeps evolving. Stay curious, explore, and find more on their official blogs, the .NET website, and other reliable sources. Resources: For further exploration and in-depth information, consider checking out these resources: .NET Official Website .NET Documentation View the full article
  8. Namaste team, As discussed in ticket number 2410140060002996, we are raising a feature update request for Graph API logs to include the remediation status attribute for example Quarantine action, which is currently unavailable. For additional information, please refer to Tracking ID#2410140060002996. Thanks, Indrajeet Deshmukh View the full article
  9. I use a backup application that uses the Windows Volume Shadow Copy feature to create snapshots and read files from the snapshots, and found that there are a lot files were corrupted in many snapshots.And I found that have been fixed in some version system, I wonder if the 2012 version has also been fixed?https://support.microsoft.com/en-us/topic/backup-files-that-are-created-by-using-the-windows-volume-shadow-copy-feature-are-corrupted-in-windows-server-2003-windows-vista-windows-server-2008-windows-7-or-windows-server-2008-r2-c405b1e0-0183-0c45-3071-adfc7c199144#articleFooterSupportBridge=cView the full article
  10. I use a backup application that uses the Windows Volume Shadow Copy feature to create snapshots and read files from the snapshots, and found that there are a lot files were corrupted in many snapshots.And I found that have been fixed in some version system, I wonder if the 2012 version has also been fixed?https://support.microsoft.com/en-us/topic/backup-files-that-are-created-by-using-the-windows-volume-shadow-copy-feature-are-corrupted-in-windows-server-2003-windows-vista-windows-server-2008-windows-7-or-windows-server-2008-r2-c405b1e0-0183-0c45-3071-adfc7c199144#articleFooterSupportBridge=cView the full article
  11. We are thrilled to introduce a powerful new feature in desktop versions of Excel that is set to transform your data collection process. With the latest update, you can now create a new Microsoft Form directly within an Excel workbook, linking the form to the workbook seamlessly. This feature, previously available in Excel for the Web, is now available in the Windows app, with Mac support coming soon. GIF showing how to create a new linked form from the Excel desktop app This new integration is particularly beneficial for users who frequently collect data from other people. By enabling the creation of a form directly from an Excel workbook, you can streamline the data collection process, making it more efficient and less prone to errors. Whether you are gathering survey responses, feedback, or any other form of data, this feature ensures that all information is centrally located and easily accessible. For example, consider a team working on a project that requires input from multiple stakeholders. Using this new feature, the project manager can create a form to collect updates and feedback, and all responses will be automatically reflected in the project’s Excel workbook. This eliminates the need for manual data entry and consolidation, saving valuable time and reducing the likelihood of errors. How it works On the Insert tab, select Forms > New Form A new browser tab will open, presenting you with a blank form to customize according to your needs. Simultaneously, a linked table will appear in your workbook, ready to sync with the form. As you edit the form or receive new submissions, the linked table in your workbook will automatically update, ensuring that your data is always current and accurate. After creating your form, you can access several other capabilities from the Forms menu: **Preview Form:** This option will open the form in preview mode in a new browser tab, allowing you to see how the form will look to respondents. **Edit Form:** This option will open the form in edit mode in a new browser tab, so you can make changes to the form as needed. **Send Form:** This option will open the form in a new browser tab and show the dialog letting you send the form out to respondents and begin collecting responses. Availability and System Requirements The new Microsoft Forms integration is available to all Current Channel users running Version 2410 (Build 16.0.18227.20000) or later. You can check which version you’re using by going to File > Account. If you are using an earlier version, we recommend updating your Excel app to take full advantage of this feature. Mac users can also look forward to this integration in an upcoming update. Feedback We would love to hear your thoughts on this new feature! Please send any feedback and suggestions by selecting Help > Feedback. View the full article
  12. So I've tried everything, from using Task Scheduler and telling it to run with "highest privileges", which runs the app, but for some reason not with admin privileges 😞 When ticking the box at the executable level, to "Run this program as an administrator", nothing starts the app at Windows startup/logon. Not a shortcut in the startup folder, not a registry entry, not a task, triggered by a shortcut, not a batch file in startup and not a VBS script. My user has admin privileges and is in the administrators group on my system. This used to always work, but somewhere in the last few months, it stopped working and I've been searching for a solution ever since. View the full article
  13. RAG Best Practice With AI Search Please refer to my repo to get more AI resources, wellcome to start it: https://github.com/xinyuwei-david/david-share.git This article if from one of my repo: https://github.com/xinyuwei-david/david-share/tree/master/LLMs/RAG-Best-Practice Although models like GPT-4 and GPT-3.5 are powerful, their knowledge cannot be the most up-to-date. Previously, we often introduced engineering techniques in the use of LLMs by treating prompt engineering, RAG, and fine-tuning as parallel methods. In fact, these three technologies can be combined. Four stages of RAG The thinking in the paper I read is excellent—it divides RAG into four stages. Level 1: Explicit Fact Queries Characteristics Simplicity: Directly retrieving explicit factual information from provided data without the need for complex reasoning or multi-step processing. Requirement: Efficiently and accurately retrieve relevant content and generate precise answers. Techniques and Engineering Suggestions a. Basic RAG Methods Data Preprocessing and Chunking Fixed-Length Chunking: Splitting the text by fixed lengths, which may interrupt sentences or paragraphs. Paragraph-Based or Semantic Chunking: Chunking based on natural paragraphs or semantic boundaries to maintain content integrity. : Divide long texts or documents into appropriate chunks for indexing and retrieval. Common chunking strategies include: Index Construction: Sparse Indexing: Use traditional information retrieval methods like TF-IDF or BM25 based on keyword matching. Dense Indexing: Use pre-trained language models (e.g., BERT) to generate text vector embeddings for vector retrieval. Retrieval Techniques: Utilize vector similarity calculations or keyword matching to retrieve the most relevant text fragments from the index. Answer Generation: Input the retrieved text fragments as context into the LLM to generate the final answer. b. Improving Retrieval and Generation Phases Multimodal Data Processing: If the data includes tables, images, or other non-text information, convert them into text form or use multimodal models for processing. Retrieval Optimization: Recursive Retrieval: Perform multiple rounds of retrieval when a single retrieval isn't sufficient to find the answer, gradually narrowing down the scope. Retrieval Result Re-ranking: Use models to score or re-rank retrieval results, prioritizing the most relevant content. Generation Optimization: Filtering Irrelevant Information: Before the generation phase, filter out retrieved content unrelated to the question to avoid interfering with the model's output. Controlling Answer Format: Through carefully designed prompts, ensure the model generates answers with correct formatting and accurate content. Engineering Practice Example Example: Constructing a Q&A system to answer common questions about company products. Data Preparation: Collect all relevant product documents, FAQs, user manuals, etc. Clean, chunk, and index the documents. System Implementation: After a user asks a question, use dense vector retrieval to find the most relevant text fragments from the index. Input the retrieved fragments as context into the LLM to generate an answer. Optimization Strategies: Regularly update documents and indexes to ensure information is current. Monitor user feedback to improve retrieval strategies and prompt designs, enhancing answer quality. Level 2: Implicit Fact Queries Characteristics Increased Complexity: Requires a certain degree of reasoning or multi-step derivation based on the retrieved data. Requirement: The model needs to decompose the question into multiple steps, retrieve and process them separately, and then synthesize the final answer. Techniques and Engineering Suggestions a. Multi-Hop Retrieval and Reasoning Iterative RAG: IRCoT (Iterative Retrieval Chain-of-Thought): Use chain-of-thought reasoning to guide the model in retrieving relevant information at each step, gradually approaching the answer. RAT (Retrieve and Answer with Thought): Introduce retrieval steps during the answering process, allowing the model to retrieve new information when needed. Question Decomposition: Break down complex questions into simpler sub-questions, retrieve and answer them individually, then synthesize the results. b. Graph or Tree Structured Retrieval and Reasoning Building Knowledge Graphs: Extract entities and relationships from data to construct knowledge graphs, helping the model understand complex dependencies. Graph Search Algorithms: Use algorithms like Depth-First Search (DFS) or Breadth-First Search (BFS) to find paths or subgraphs related to the question within the knowledge graph. c. Using SQL or Other Structured Queries Text-to-SQL Conversion: Convert natural language questions into SQL queries to retrieve answers from structured databases. Tool Support: Use existing text-to-SQL conversion tools (e.g., Chat2DB) to facilitate natural language to database query conversion. Engineering Practice Example Scenario: A user asks, "In which quarters over the past five years did company X's stock price exceed company Y's?" Question Decomposition: Obtain quarterly stock price data for company X and company Y over the past five years. Compare the stock prices for each quarter. Identify the quarters where company X's stock price exceeded company Y's. Implementation Steps: Step 1: Use text-to-SQL tools to convert the natural language query into SQL queries and retrieve relevant data from the database. Step 2: Use a programming language (e.g., Python) to process and compare the data. Step 3: Organize the results into a user-readable format. Answer Generation: Input the organized results as context into the LLM to generate a natural language response. Level 3: Interpretable Rationale Queries Characteristics Application of Domain-Specific Rules and Guidelines: The model needs to understand and follow rules typically not covered in pre-training data. Requirement: Integrate external rules, guidelines, or processes into the model so it can follow specified logic and steps when answering. Techniques and Engineering Suggestions a. Prompt Engineering and Prompt Optimization Designing Effective Prompts: Explicitly provide rules or guidelines within the prompt to guide the model in following specified steps when answering. Automated Prompt Optimization: Use optimization algorithms (e.g., reinforcement learning) to automatically search and optimize prompts, improving the model's performance on specific tasks. OPRO (Optimization with Prompt Rewriting): The model generates and evaluates prompts on its own, iteratively optimizing to find the best prompt combination. b. Chain-of-Thought (CoT) Prompts Guiding Multi-Step Reasoning: Require the model to display its reasoning process within the prompt, ensuring it follows specified logic. Manual or Automated CoT Prompt Design: Design appropriate CoT prompts based on task requirements or use algorithms to generate them automatically. c. Following External Processes or Decision Trees Encoding Rules and Processes: Convert decision processes into state machines, decision trees, or pseudocode for the model to execute. Model Adjustment: Enable the model to parse and execute these encoded rules. Engineering Practice Example Example: A customer service chatbot handling return requests. Scenario: A customer requests a return. The chatbot needs to guide the customer through the appropriate process according to the company's return policy. Technical Implementation: Rule Integration: Organize the company's return policies and procedures into clear steps or decision trees. Prompt Design: Include key points of the return policy within the prompt, requiring the model to guide the customer step by step. Model Execution: The LLM interacts with the customer based on the prompt, following the return process to provide clear guidance. Optimization Strategies: Prompt Optimization: Adjust prompts based on customer feedback to help the model more accurately understand and execute the return process. Multi-Turn Dialogue: Support multiple rounds of conversation with the customer to handle various potential issues and exceptions. Level 4: Hidden Rationale Queries Characteristics Highest Complexity: Involves domain-specific, implicit reasoning methods; the model needs to discover and apply these hidden logics from data. Requirement: The model must be capable of mining patterns and reasoning methods from large datasets, akin to the thought processes of domain experts. Techniques and Engineering Suggestions a. Offline Learning and Experience Accumulation Learning Patterns and Experience from Data: Train the model to generalize potential rules and logic from historical data and cases. Self-Supervised Learning: Use the model-generated reasoning processes (e.g., Chain-of-Thought) as auxiliary information to optimize the model's reasoning capabilities. b. In-Context Learning (ICL) Providing Examples and Cases: Include relevant examples within the prompt for the model to reference similar cases during reasoning. Retrieving Relevant Cases: Use retrieval modules to find cases similar to the current question from a database and provide them to the model. c. Model Fine-Tuning Domain-Specific Fine-Tuning: Fine-tune the model using extensive domain data to internalize domain knowledge. Reinforcement Learning: Employ reward mechanisms to encourage the model to produce desired reasoning processes and answers. Engineering Practice Example Example: A legal assistant AI handling complex cases. Scenario: A user consults on a complex legal issue. The AI needs to provide advice, citing relevant legal provisions and precedents. Technical Implementation: Data Preparation: Collect a large corpus of legal documents, case analyses, expert opinions, etc. Model Fine-Tuning: Fine-tune the LLM using legal domain data to equip it with legal reasoning capabilities. Case Retrieval: Use RAG to retrieve relevant precedents and legal provisions from a database. Answer Generation: Input the retrieved cases and provisions as context into the fine-tuned LLM to generate professional legal advice. Optimization Strategies: Continuous Learning: Regularly update the model by adding new legal cases and regulatory changes. Expert Review: Incorporate legal experts to review the model's outputs, ensuring accuracy and legality. Comprehensive Consideration: Combining Fine-Tuned LLMs and RAG While fine-tuning LLMs can enhance the model's reasoning ability and domain adaptability, it cannot entirely replace the role of RAG. RAG has unique advantages in handling dynamic, massive, and real-time updated knowledge. Combining fine-tuning and RAG leverages their respective strengths, enabling the model to possess strong reasoning capabilities while accessing the latest and most comprehensive external knowledge. Advantages of the Combination Enhanced Reasoning Ability: Through fine-tuning, the model learns domain-specific reasoning methods and logic. Real-Time Knowledge Access: RAG allows the model to retrieve the latest external data in real-time when generating answers. Flexibility and Scalability: RAG systems can easily update data sources without the need to retrain the model. Practical Application Suggestions Combining Fine-Tuning and RAG for Complex Tasks: Use fine-tuning to enhance the model's reasoning and logic capabilities, while employing RAG to obtain specific knowledge and information. Evaluating Cost-Benefit Ratio: Consider the costs and benefits of fine-tuning; focus on fine-tuning core reasoning abilities and let RAG handle knowledge acquisition. Continuous Update and Maintenance: Establish data update mechanisms for the RAG system to ensure the external data accessed by the model is up-to-date and accurate. RAG Detailed technical explaination Retrieval Augmented Generation (RAG) is a technique that combines large language models (LLMs) with information retrieval. It enhances the model's capabilities by retrieving and utilizing relevant information from external knowledge bases during the generation process. This provides the model with up-to-date, domain-specific knowledge, enabling it to generate more accurate and contextually relevant responses. Purpose of RAG Why do we need RAG? Reducing Hallucinations: LLMs may produce inaccurate or false information, known as "hallucinations," when they lack sufficient context. RAG reduces the occurrence of hallucinations by providing real-time external information. Updating Knowledge: The pre-training data of LLMs may lag behind current information. RAG allows models to access the latest data sources, maintaining the timeliness of information. Enhancing Accuracy: By retrieving relevant background information, the model's answers become more accurate and professional. How RAG Works The core idea of RAG is to retrieve relevant information from a document repository and input it into the LLM along with the user's query, guiding the model to generate a more accurate answer. The general process is as follows: User Query: The user poses a question or request to the system. Retrieval Phase: The system uses the query to retrieve relevant document fragments (chunks) from a document repository or knowledge base. Generation Phase: The retrieved document fragments are input into the LLM along with the original query to generate the final answer. Key Steps to Building a RAG System Clarify Objectives Before starting to build a RAG system, you need to first clarify your goals: Upgrade Search Interface: Do you want to add semantic search capabilities to your existing search interface? Enhance Domain Knowledge: Do you wish to utilize domain-specific knowledge to enhance search or chat functions? Add a Chatbot: Do you want to add a chatbot to interact with customers? Expose Internal APIs: Do you plan to expose internal APIs through user dialogues? Clear objectives will guide the entire implementation process and help you choose the most suitable technologies and strategies. Data Preparation Data is the foundation of a RAG system, and its quality directly affects system performance. Data preparation includes the following steps: (1) Assess Data Formats Structured Data: Such as CSV, JSON, etc., which need to be converted into text format to facilitate indexing and retrieval. Tabular Data: May need to be converted or enriched to support more complex searches or interactions. Text Data: Such as documents, articles, chat records, etc., which may need to be organized or filtered. Image Data: Including flowcharts, documents, photographs, and similar images. (2) Data Enrichment Add Contextual Information: Supplement data with additional textual content, such as knowledge bases or industry information. Data Annotation: Label key entities, concepts, and relationships to enhance the model's understanding capabilities. (3) Choose the Right Platform Vector Databases: Such as AI Search, Qdrant, etc., used for storing and retrieving embedding vectors. Relational Databases: The database schema needs to be included in the LLM's prompts to translate user requests into SQL queries. Text Search Engines: Like AI Search, Elasticsearch, Couchbase, which can be combined with vector search to leverage both text and semantic search advantages. Graph Databases: Build knowledge graphs to utilize the connections and semantic relationships between nodes. Document Chunking In a RAG system, document chunking is a critical step that directly affects the quality and relevance of the retrieved information. Below are the best practices for chunking: Model Limitations: LLMs have a maximum context length limitation. Improve Retrieval Efficiency: Splitting large documents into smaller chunks helps to improve retrieval accuracy and speed. Methods to do chunking Fixed-Size Chunking: Define a fixed size (e.g., 200 words) for chunks and allow a certain degree of overlap (e.g., 10-15%). Content-Based Variable-Size Chunking: Chunk based on content features (such as sentences, paragraphs, Markdown structures). Custom or Iterative Chunking Strategies: Combine fixed-size and variable-size methods and adjust according to specific needs. Importance of Content Overlap Preserve Context: Allowing some overlap between chunks during chunking helps to retain contextual information. Recommendation: Start with about 10% overlap and adjust based on specific data types and use cases. Choosing the Right Embedding Model Embedding models are used to convert text into vector form to facilitate similarity computation. When choosing an embedding model, consider: Model Input Limitations: Ensure the input text length is within the model's allowable range. Model Performance and Effectiveness: Choose a model with good performance and suitable effectiveness based on the specific application scenario. New Embedding Models: OpenAI has introduced two new embedding models: text-embedding-3-small and text-embedding-3-large. Model Size and Performance: text-embedding-3-large is a larger and more powerful embedding model capable of creating embeddings with up to 3,072 dimensions. Performance Improvements: MIRACL Benchmark: text-embedding-3-large scored 54.9 on the MIRACL benchmark, showing a significant improvement over text-embedding-ada-002 which scored 31.4. MTEB Benchmark: text-embedding-3-large scored 64.6 on the MTEB benchmark, surpassing text-embedding-ada-002 which scored 61.0. Analysis of Improvements: Higher Dimensions: The ability of text-embedding-3-large to create embeddings with up to 3,072 dimensions allows it to better capture and represent the concepts and relationships within the content. Improved Training Techniques: The new model employs more advanced training techniques and optimization methods, resulting in better performance on multilingual retrieval and English tasks. Flexibility: text-embedding-3-large allows developers to balance performance and cost by adjusting the dimensionality of the embeddings. For example, reducing the 3,072-dimensional embeddings to 256 dimensions can still outperform the uncompressed text-embedding-ada-002 on the MTEB benchmark. Note: To migrate from text-embedding-ada-002 to text-embedding-3-large, you'll need to manually generate new embeddings, as upgrading between embedding models is not automatic. The first step is to deploy the new model (text-embedding-3-large) within your Azure environment. After that, re-generate embeddings for all your data, as embeddings from the previous model will not be compatible with the new one. AI Search Service Capacity and Performance Optimization Service Tiers and Capacity Refer to: https://learn.microsoft.com/en-us/azure/search/search-limits-quotas-capacity Upgrade Service Tier: Upgrading from Standard S1 to S2 can provide higher performance and storage capacity. Increase Partitions and Replicas: Adjust based on query load and index size. Avoid Complex Queries: Reduce the use of high-overhead queries, such as regular expression queries. Query Optimization: Retrieve only the required fields, limit the amount of data returned, and use search functions rather than complex filters.Tips for Improving Azure AI Search Performance Tips for Improving Azure AI Search Performance Index Size and Architecture: Regularly optimize the index; remove unnecessary fields and documents. Query Design: Optimize query statements to reduce unnecessary scanning and computation. Service Capacity: Adjust replicas and partitions appropriately based on query load and index size. Avoid Complex Queries: Reduce the use of high-overhead queries, such as regular expression queries. Chunking Large Documents Use Built-in Text Splitting Skills: Choose modes like pages or sentences based on needs. Adjust Parameters: Set appropriate maximumPageLength, pageOverlapLength, etc., based on document characteristics. Use Tools Like LangChain: For more flexible chunking and embedding operations. L1+L2 Search + Query Rewriting and New Semantic Reranker L1 Hybrid Search+L2 Re-ranker:Enhance search result Query Rewriting: Improve recall rate and accuracy by rewriting user queries. Semantic Reranker: Use cross-encoders to re-rank candidate results, enhancing result relevance. Prompt Engineering Use Rich Examples: Provide multiple examples to guide the model's learning and improve its responses. Provide Clear Instructions: Ensure that instructions are explicit and unambiguous to avoid misunderstandings. Restrict Input and Output Formats: Define acceptable input and output formats to prevent malicious content and protect model security. Note: Prompt Engineering is not suitable for Azure OpenAI o1 Reference: https://mp.weixin.qq.com/s/tLcAfPU6hUkFsNMjDFeklw?token=1531586958&lang=zh_CN Your task is to review customer questions and categorize them into one of the following 4 types of problems. The review steps are as follows, please perform step by step: 1. Extract three keywords from customer questions and translate them into English. Please connect the three keywords with commas to make it a complete JSON value. 2. Summarize the customer’s questions in 15 more words and in English. 3. Categorize the customer’s questions based on Review text and summary. Category list: • Technical issue: customer is experiencing server-side issues, client errors or product limitations. Example: "I'm having trouble logging into my account. It keeps saying there's a server error." • Product inquiry: customer would like to know more details about the product or is asking questions about how to use it. Example: "Can you provide more information about the product and how to use it?" • Application status: customer is requesting to check the status of their Azure OpenAI, GPT-4 or DALLE application. Example: "What is the status of my Azure OpenAI application?" • Unknown: if you only have a low confidence score to categorize. Example: "I'm not sure if this is the right place to ask, but I have a question about billing." Provide them in JSON format with the following keys: Case id; Key-words; Summary; Category. Please generate only one JSON structure per review. Please show the output results - in a table, the table is divided into four columns: Case ID, keywords, Summary, Category. Demo: Lenovo ThinkPad Product RAG I have a Lenovo ThinkPad product manual, and I want to build a RAG (Retrieval-Augmented Generation) system based on it. The document includes up to dozens of product models, many of which have very similar names. Moreover, the document is nearly 900 pages long. Therefore, to construct a RAG system based on this document and provide precise answers, I need to address the following issues: How to split the document; How to avoid loss of relevance; How to resolve information discontinuity; The problem of low search accuracy due to numerous similar products; The challenge of diverse questioning on the system's generalization ability. In the end, I chunked the document based on the product models and set more effective prompts, so that the RAG (Retrieval-Augmented Generation) system can accurately answer questions. System prompt You are an AI assistant that helps people answer the question of Lenovo product. Please be patient and try to answer your questions in as much detail as possible and give the reason. When you use reference documents, please list the file names directly, not only Citation 1, should be ThinkPad E14 Gen 4 (AMD).pdf.txt eg. Index format is as following: Final Result: Please see my demo vedios on Yutube Refer to: https://arxiv.org/pdf/2409.14924v1 View the full article
  14. Hello, I request any assistance in refining a macro code I am currently working on. My requirements are as follows: The code should copy data from columns AK to AS while maintaining the original formatting from the source file.I need to paste this data as values in columns AK to AO and AQ to AS, while leaving column AP with formulas intact.Additionally, only the following cells should contain formulas: AP4, AP5, AQ4, AQ5, AR4, and AR5.Lastly, there are two logos that need to be positioned: one on the left side of the sheet and the other on the right.Currently, the macro is copying all formulas into the new workbook instead of pasting values as intended. I appreciate any help in making the necessary adjustments to meet these requirements. thanks! Macro code with excel file in the attachment Sub ExportReviewTab() Dim wb As Workbook Dim newWb As Workbook Dim ws As Worksheet Dim newWs As Worksheet Dim exportButton As Object Dim saveFile As Variant Dim lastRow As Long Dim col As Integer Dim shp As Shape Dim fileName As String Dim currentDateTime As String ' Set the worksheet to export Set ws = ThisWorkbook.Sheets("Review") ' Find the last row in column AK lastRow = ws.Cells(ws.Rows.count, "AK").End(xlUp).Row ' Create a new workbook Set newWb = Workbooks.Add Set newWs = newWb.Sheets(1) newWs.Name = "Review" ' Rename the sheet to "Review" ' Copy all formatting and content (including merged cells) from the source worksheet ws.Range("AK1:AS" & lastRow).Copy newWs.Range("A1").PasteSpecial Paste:=xlPasteAllUsingSourceTheme ' This ensures all formatting, including merged cells, are copied newWs.Range("A1").PasteSpecial Paste:=xlPasteColumnWidths ' This ensures column widths match exactly ' Paste column AJ (which becomes column E in the new workbook) as values, starting from E10 ws.Range("AK9:AK" & lastRow).Copy newWs.Range("E10").PasteSpecial Paste:=xlPasteValues ' Paste values to avoid #REF! error, starting from E10 ' Paste values from AJ5 and AJ6 (which become E5 and E6 in the new workbook) newWs.Range("E4").Value = ws.Range("AO4").Value newWs.Range("E5").Value = ws.Range("AO5").Value ' Apply specific formulas in the new workbook newWs.Range("F9:F" & lastRow).Formula = "=IF(D9="""","""",D9*E9)" newWs.Range("F4").Formula = "=SUM(F9:F" & lastRow & ")" newWs.Range("F5").Formula = "=SUBTOTAL(109,F9:F" & lastRow & ")" newWs.Range("G4").Formula = "=F4-E4" newWs.Range("G5").Formula = "=F5-E5" newWs.Range("H4").Formula = "=G4/E4" newWs.Range("H5").Formula = "=G5/E5" ' Copy Picture 3 and Picture 4 from the source worksheet and position them exactly the same For Each shp In ws.Shapes If shp.Name = "Picture 3" Or shp.Name = "Picture 4" Then shp.Copy newWs.Paste ' Align the shape position to match the original With newWs.Shapes(newWs.Shapes.count) .Top = shp.Top .Right = shp.Right '.LockAspectRatio = shp.LockAspectRatio '.Width = shp.Width '.Height = shp.Height End With End If Next shp ' Delete data validation in the new worksheet cells B1:B5 newWs.Range("B1:B5").Validation.Delete ' Clear contents of cells A1:A5 newWs.Range("A1:A5").ClearContents newWs.Range("B1:B5").ClearContents ' Paint cells B1:B5 with no fill newWs.Range("B1:B5").Interior.ColorIndex = xlNone ' Group column J in the new worksheet newWs.Columns("J:J").Group ' Freeze panes at row 9 newWs.Rows("9:9").Select ActiveWindow.FreezePanes = True ' Add a filter to row 9 (header row) newWs.Rows("8:8").AutoFilter ' Remove gridlines newWs.Application.ActiveWindow.DisplayGridlines = False ' Set zoom to 80% newWs.Application.ActiveWindow.Zoom = 80 ' Move cursor to cell A1 newWs.Range("A1").Select ' Apply font type to Calibri and set the font size to match source newWs.Cells.Font.Name = "Calibri" ' Set font explicitly to Calibri newWs.Cells.Font.Size = ws.Cells.Font.Size ' Keep the same font size from the source ' Remove export button if it exists in the original worksheet On Error Resume Next Set exportButton = ws.Buttons("Export") If Not exportButton Is Nothing Then exportButton.Delete End If On Error GoTo 0 ' Set default file name with the current date and time currentDateTime = Format(Now, "yyyymmdd_HHMMSS") ' Adds timestamp to file name fileName = "EL_Review_" & currentDateTime ' Prompt to save the new workbook with the default file name saveFile = Application.GetSaveAsFilename(InitialFileName:=fileName, FileFilter:="Excel Files (*.xlsx), *.xlsx", Title:="Save Exported File") If saveFile <> False Then newWb.SaveAs fileName:=saveFile MsgBox "File saved as: " & saveFile End If ' Script was written by abc newWs.Cells(lastRow + 2, 1).Value = "Script written by abc" ' Clean up Application.CutCopyMode = False Set newWb = Nothing Set newWs = Nothing Set ws = Nothing End Sub View the full article
  15. كيف يمكن التجكم في الاجهزة هل يمكن مراقبة جهازي من بعد او جهاز ابني ؟كيف يمكن فعل ذلك لم استطيع ربط الجهاز الاخر؟هل يمكن لي اقفال الملفات عندما ارغب بتخصيص الدخول مثلاً السماح لبعض الملفات بالضهور والاخر ليظهر؟هل استطيع ربط جهاز iOS ,والتحكم بيه عن بعد ومراقبة الانشطة وتتبع الموقع ؟View the full article
  16. I am trying to generate web server certificate in adcs but I am not able to see web server certificate optionView the full article
  17. I am trying to generate web server certificate in adcs but I am not able to see web server certificate optionView the full article
  18. Hi All, What it mean WINDOWS SERVER 2022 STANDARD EDITION, ADD LICENSE,16CORE,NO MEDIA/KEY*2 and WINDOWS SERVER 2022 STANDARD,16CORE,FI,NO MED,NO CAL? We bought a dell server and found two tacking ID paper, no license. how to find the license key? View the full article
  19. Hi All, I have a remediation script to uninstall an application. However, that will throw an error message even though it runs on PowerShell manually without an issue. Based on my troubleshooting, it seems remediation script doesn't identify the special characters contents in the file path. I would really appreciate it your help if anyone come across this before. surprisingly, although it gives an error, the command is executing and application is uninstalling without and issue. But I am curious to get rid of the error message for reporting purpose. Below is the command executing: Start-Process "C:\ProgramData\Package Cache\{7b06c930-fc32-47a7-8bea-5f1fb6099ee8}\elliptic_virtual_lock_sensor.exe" /uninstall /quiet -Wait Error message: Troubleshooting methods tried so far: Use cmd.exe '/C', instead of start-process.Used file path with start-process (Start-Process -Filepath ...... )Add error action as either ignored or silently continue, but it still give an error in Intune.Start-Process "C:\ProgramData\Package Cache\{7b06c930-fc32-47a7-8bea-5f1fb6099ee8}\elliptic_virtual_lock_sensor.exe" /uninstall /quiet -Wait -erroraction silentlycontinueStart-Process "C:\ProgramData\Package Cache\{7b06c930-fc32-47a7-8bea-5f1fb6099ee8}\elliptic_virtual_lock_sensor.exe" /uninstall /quiet -Wait -erroraction ignoreUsed backtick ( ` ) with special characters ( { and } ). below is the command used. whenever I used this bactick ( `) it didn't work the script at all. Start-Process "C:\ProgramData\Package Cache\`{7b06c930-fc32-47a7-8bea-5f1fb6099ee8`}\elliptic_virtual_lock_sensor.exe" /uninstall /quiet -Wait Thanks advance, Dilan View the full article
  20. I am trying to create a Content Search for a data subject request, and I am having a really hard time building out my KQL. The issue is that I need to stack two sets of keyword searches, but the estimated results are wildly high so I feel I must be doing something wrong. In English, the search requirement is (using example keywords): Find all mail or SharePoint content where: Keywords include (Max OR John OR Sally)ANDKeywords include (White OR Black OR Red)ANDDate between Jun 2024 and Nov 2024 I have tried all different forms of this KQL, but I've essentially come up with this: ((Max John Sally) AND (White Black Red)) AND (Date=2024-06-01..2024-11-04) Does anybody have an idea where I'm going wrong? View the full article
  21. Hello, I have a challenge. I installed AD connect the user objects are synchronized. Only the device objects are not synchronized. AD connect for device sync is configured correctly. As soon as I create a new device object in AD (in the same OU as the existing device objects / same group membership) it is synchronized. Only the existing device objects are not synchronized. I think it may be due to the security permissions of the device objects. How can I check it? Which security permissions the sync user needs on the device objects? What can I do to ensure that the device objects are synchronized? Thank you for your support? Regards Stefan View the full article
  22. Please can i have help to connect to Internet on my laptopView the full article
  23. Hello, I have a question about widows server 2025 Licensing. I know, there are 2 basic versions. Standard and Datacenter. The question is, what retail version of these are there. I've seen them advertised as just a download and a key, some as oem, which comes with DVD and the key sticker. Is there for example a retail version of the datacenter that comes in a CD sleeve with the key inside? I've tried to upload pictures but they won't post.View the full article
  24. Numbers2Wordsλ Background There have been a few discussions in the past on this forum that offered lengthy solutions to this task. My approach to this task attempts to shortcut the problem by using the seldom used BAHTTEXT function. It recently occurred to me BAHTTEXT converts a number to Thai and uses baht(s) and satang (fractional unit). This coupled with the recently released to current channel TRANSLATE was the source of inspiration. The Plan Numbers >> Thai (BAHTTEXT) >> (Desired language - TRANSLATE) >> some cleanup with Regex Observations This method is very accurate up until about 10,000 and then some anomalies creep in: From what I gather this appears to be a result of the way BAHTTEXT converts numbers to words because a cursory search for "Ten thousand" in Thai returned a translation. There doesn't seem to be any pattern in that the function cannot produce words for 100,000 but can handle 211,111 without a problem. I think it can be accounted for but then I might as well change the whole approach and not use BAHTTEXT and TRANSLATE. Pro Numbers2Wordsλ is somewhat simple and reads easy Very accurate to 9,999 and capable of handling all languages used with TRANSLATE and supports a lot of popular currencies. Con Anomalies beyond 10,000. BAHTTEXT does not seem to do well with 1s and 0s. Some languages may not translate Thai to Words (Japanese, for example). This method relies on TRANSLATE which is a service function that can be throttled with overuse. This method calculates about as fast as cells with Python objects. Discussion I leave the function the below. Also, interested in alternative solutions to multiple replacements with REGEXREPLACE. From my research, there doesn't appear to be an elegant way to do it all in one go. // --- Workbook module --- //Convert numbers to words by specifying language and currency. Numbers2Wordsλ = LAMBDA(numbers, language, currency, LET( //Translate provided numbers to Thai and then to specified language. Thai, BAHTTEXT(numbers), translated, TRANSLATE(Thai, "th", language), //Identify the row for the selected currency in the List matrix. i, XMATCH(currency, Country), //Determine if replacement for whole number is singular or plural with 'a'. //Do the same for fractional units with 'b' replace_a, INDEX(List, i, (INT(numbers) > 1) + 2), replace_b, INDEX(List, i, (numbers - INT(numbers) > 0.01) + 4), //Replace Thai currency words: baht(s), satang, and net. return, REGEXREPLACE(REGEXREPLACE(REGEXREPLACE(translated, "bahts?",replace_a ,, 1),"satang.?",replace_b,,1)," net","",,1), IF(language="th",translated,return))); //Supported language codes: //https://learn.microsoft.com/en-us/azure/ai-services/Translator/language-support#translation //Supported currencies List = { "Country", "Currency", "Currency (plural)", "Fractional", "Fractional (plural)"; "AUD", "dollar", "dollars", "cent", "cents"; "CAD", "dollar", "dollars", "cent", "cents"; "CHF", "franc", "francs", "rappen", "rappen"; "CHN", "yuan", "yua", "fen", "fen"; "CLP", "peso", "pesos", "centavo", "centavos"; "DKK", "krone", "kroner", "Øre", "Øre"; "DZD", "dinar", "Dinars", "centime", "centimes"; "EUR", "euro", "euros", "euro cent", "euro cents"; "GBP", "pound", "pounds", "penny", "pence"; "ILS", "shekel", "shekels", "agora", "agorot"; "INR", "rupee", "rupees", "paisa", "paise"; "JPN", "yen", "yen", "sen", "sen"; "MXN", "peso", "pesos", "centavo", "centavos"; "NOK", "krone", "kroner", "Øre", "Øre"; "NZD", "dollar", "dollars", "cent", "cents"; "RUB", "ruble", "rubles", "Kopeck", "Kopecks"; "TH", "raht", "bahts", "satang", "satang"; "TRY", "lira", "lire", "kuruş", "kuruş"; "USD", "dollar", "dollars", "cent", "cents"; "XAF", "krone", "kroner", "centime", "centimes"; "XCD", "dollar", "dollars", "cent", "cents"; "XOF", "franc", "francs", "centime", "centimes"; "XPF", "franc", "francs", "centime", "centimes"; "ZAR", "rand", "rand", "cent", "cents"}; Country = TAKE(List,,1); CurrencyName = CHOOSECOLS(List,2); CurrencyPl = CHOOSECOLS(List,3); Fractional = CHOOSECOLS(List,4); FractionalPl = TAKE(List,,-1); View the full article
  25. I'm getting this error message when I try to go to large major websites such as the government or Wikipedia, and more and more often. It says: "it's security certificate is not trusted by your device's operating system. This may be caused by a misconfiguration or an attacker intercepting your connection." I tried deleting my phone's cache and restarting the phone, and it did not correct the error. This is causing me more and more hassle. How can I fix it short of buying a new phone? My phone is 5 years old, and works beautifully except for this, and a few apps I can't use. It is an Android phoView the full article
×
×
  • Create New...